#!/bin/sh
# SWI-Prolog saved state
exec ${SWIPL-/usr/lib/swi-prolog/bin/arm64/swipl} -x "$0" -- "$@"

<archive>

<file name="$options" class="$prolog" encoding="none" size=143 modified=1489538630>
local=268435456
global=268435456
trail=268435456
goal=user:simplifier_main
toplevel=prolog
init_file=none
system_init_file=swipl
class=runtime

</file>

<file name="$state" class="$prolog" encoding="none" size=878060 modified=1489538630>
SWI-Prolog state (www.swi-prolog.org)
 @A=[M@@/usr/lib/swi-prologQMsystem-C XD  t: t$set_predicate_attributet  t/$convert_option_valuetrace D  t  t t  t  hide_childsO  CK	s@ /usr/lib/swi-prolog/boot/init.pl  ]wA integer@6@9number_chars
 @<CK  atom@6@9
atom_chars @<CK  callable@6@/@8 @ @9term_to_atom @<XD  t  t t  t $run_initialization 	 D  t  t t  t   
O  CAy  @6@1$push_input_contextinitialization@5@1$run_initialization_2@5$pop_input_context@9setup_call_cleanup @<XD  t  t$predefine_foreignt  t 	$raw_readD  t  t @&t  t prolog_current_frameD  t  t @&t  t 	nb_getvalD  t  t t  t $redefine_module 	 D  t  t t  t  @+ 
O  @+CI  false@6@?@<C@ I  true@6@?@E@1file@.@5@8module_property
	$syspreds@,	@M@ @9unload_file @4@@@S@F@<C@2I$  ask@6@E@&
user_input@1tty @.@5@8stream_property @1 @/@.@5@8 @1@,	@  @.@8$rdef_response @M @.@9 @, @@@S@F@<XD  t  t @&t  t current_atomD  t  t t  t $set_directive_mode 	 D  t  t t  t  @E 
O  @ECC  @6@1$directive_mode_store@0@5@8
retractall @1 @G@5@9assertz @<XD  t  t @&t  t 
downcase_atomD  t  t t  t $file_error 	 D  t  t t  t  @P 
O  @PC@#B  	file_type	directory@6@D
@8exists_directory @M
@Q@?@"existence_error @T	@#@"not_a_directory
@#@<CB   @R@6@8 @U@?@" @X @0	@#@" @T
@#@<C@$B  access

@6@/@ 
@8$one_or_member @D@ @8access_file @M@Q@"permission_errorsource_sink	@#@<XD  t  t @&t  t get_codeD  t  t t  t $restore_lex_state 	 D  t  t t  t  @i 
O  @iCG  -@6@?@<CG  lexstate
	
@6@0@8$style_check emulated_dialect@9set_prolog_flag @<XD  t  t t  t $do_load_file_2 	 D  t  t t  t  @u 
O  @uCA,F  @6clauses@/@8
statistics cputime@/
@8 @x@ @/@8$set_sandboxed_load @ @/@8$set_verbose_load @ @/@8$update_autoload_level @/@8$save_file_scoped_flags @/@8$compilation_level 	load_file@ @/@/@8$load_msg_level @ @1 @@2start@2 @0	@5@8$print_message @E@1stream@.@5@ @8	memberchk @M@( @@@@(source@F@E@A@+ @@E@ @#@1formatqlf@5@  @@8$option @M@ @ @1	file_name	@5@8
set_stream @ @/@/@ @8
$qload_stream
$qlf@@@1 @	@5@/@/@ @8
$consult_file @M@S@F@@@-@E@!@+ @@/@8
$consult_goal @ @/@/@ @@M@!@S@@error@1 @@2failed@5@8
print_message
	$messages@R@G@F@ @ @8$import_from_loaded_module @E@"	@+ @M@"@8garbage_collect_clauses  @@@S @w@/@8 @x @{@/@8 @x@b@g@g@m @k@y@b@g@g
@m @@y@ @1 @@2done@1 @	@5@5@8 @@ @8$set_autoload_level verbose_load@ @8 @rsandboxed_load@ @8 @r@ @9$restore_file_scoped_flags @<XD  t  t @&t  t =\=D  t  t @&t  t $open_shared_objectD  t  t @&t  t 
mutex_destroyD  t  t @&t  t openD  t  t t  t $module_name 	 D  t  t t  t  @ 
O  @CI  @6@1module
@5@ @8 @ @?@/@ @8$set_source_module @,
@<CI  @6@T@?@/@8file_base_name @0@ @8file_name_extension @ @9 @ @<CI  @6@8$reserved_module @?@1 @@1 @eload @@5@0@5@9throw @<CI   @=XD  t  t t  t $list_to_set 	 D  t  t t  t  @ 
O  @CC   
@=CC  @6@ @8 @@?@ @9 @ @<CC  


@6@ @3	@5@ 
@9 @ @<XD  t  t @&t  t $cmd_option_valD  t  t @&t  t 	set_inputD  t  t @&t  t appendD  t  t @&t  t seekD  t  t t  t calltransparentD  t  tmeta_predicatet  t @? @ @ @ @D  t  t t  t  @ 
D  t  t t  t  @isoO  @C
@  @6@ @ @ 
@@<XD  t  t @&t  t $current_moduleD  t  t t  t  @ 	 D  t  t t  t  @ 
O  @C@%GR  @6@,	@8  @?@1imports@.@5all@8 @@1reexport@.@5 @-@8 @@ @ @9$import_list @<CGX   @=XD  t  t @&t  t 
$start_auxD  t  t @&t  t atomics_to_stringD  t  t t  t $file_type_extensions 	 D  t  t t  t  A 
O  AC
B   @@6@?prolog@9 A @<C@<B  @6$bags@0@8 @ @?@/
@1 user@2prolog_file_type
@5@/@8findall
 A	@E@+@D
@8
$ft_no_ext @M
@Q@M @S@8
$domain_error @@@S@ @3 @5@9$append @<CB    Apl A@=XD  t  t t  t \+ @D  t  t @t  t A D  t  t t  t  A 
D  t  t t  t  A @O  AC
@  @6@D	@@M	@Q@<XD  t  t @&t  t format_predicateD  t  t t  t 
use_module @D  t  t @t  t A! +D  t  t t  t  A! 
O  A"CE  @6@3@1if
not_loaded@5@4@1must_be_module @.@5@4@1 @	@5@5@9
load_files @<XD  t  t @&t  t 	del_attrsD  t  t @&t  t setenvD  t  t @&t  t compound_name_argumentsD  t  t @&t  t getenvD  t  t @&t  t  @KD  t  t @&t  t 	term_hashD  t  t @&t  t $source_fileD  t  t @&t  t  @ D  t  t @&t  t dict_createD  t  t t  t  @% @D  t  t @t  t @$   D  t  t t  t  @% 
O  @$CA:  @6@0@9setup_call_catcher_cleanup @<XD  t  t t  t 
$goal_type 	 D  t  t t  t  A6 
O  A6CJ  @6@E

@8
$load_goal @M
@)	 @@@@)	 @@<XD  t  t t  t $file_scoped_flag 	 D  t  t t  t  A; 
O  A;CGE   generate_debug_info@=CGF   optimise@=XD  t  t t  t  A 	 D  t  t t  t  A 
O  ACK   
	@=CK  


@6@ @ 
@9 A@<XD  t  t @&t  t betweenD  t  t @&t  t message_queue_propertyD  t  t @&t  t $add_directive_wicD  t  t t  t $iso_property_directive 	 D  t  t t  t  AB 
O  ABCJ~   dynamic@=CJ   	multifile@=CJ   
discontiguous@=XD  t  t t  t $load_context_module ADD  t  t t  t  AG AED  t  t t  t  AG 	 D  t  t t  t  AG 
O  AGCL   @;/build/swi-prolog-LBd5Vx/swi-prolog-7.2.3+dfsg/boot/load.pl @=C@%	s@ /usr/lib/swi-prolog/boot/load.pl  ]wA AJ @=/build/swi-prolog-LBd5Vx/swi-prolog-7.2.3+dfsg/boot/expand.pl @=C@% AJ AJ @:/build/swi-prolog-LBd5Vx/swi-prolog-7.2.3+dfsg/boot/dcg.pl @=C@3 AJ AJ @>/build/swi-prolog-LBd5Vx/swi-prolog-7.2.3+dfsg/boot/license.pl @=C@3 AJ AJ @>/build/swi-prolog-LBd5Vx/swi-prolog-7.2.3+dfsg/boot/syspred.pl @=C@3 AJ AJ @?/build/swi-prolog-LBd5Vx/swi-prolog-7.2.3+dfsg/boot/messages.pl @=C@3 AJ AJ @?/build/swi-prolog-LBd5Vx/swi-prolog-7.2.3+dfsg/boot/toplevel.pl @=C@3 AJ AJ @=/build/swi-prolog-LBd5Vx/swi-prolog-7.2.3+dfsg/boot/attvar.pl @=C@3 AJ AJ @;/build/swi-prolog-LBd5Vx/swi-prolog-7.2.3+dfsg/boot/bags.pl @=C@3 AJ AJ @</build/swi-prolog-LBd5Vx/swi-prolog-7.2.3+dfsg/boot/apply.pl @=C@3 AJ AJ @>/build/swi-prolog-LBd5Vx/swi-prolog-7.2.3+dfsg/boot/history.pl @=C@3 AJ AJ @;/build/swi-prolog-LBd5Vx/swi-prolog-7.2.3+dfsg/boot/dwim.pl @=C@3 AJ AJ @</build/swi-prolog-LBd5Vx/swi-prolog-7.2.3+dfsg/boot/parms.pl @=C@3 AJ AJ @?/build/swi-prolog-LBd5Vx/swi-prolog-7.2.3+dfsg/boot/autoload.pl @=C@3 AJ AJ @:/build/swi-prolog-LBd5Vx/swi-prolog-7.2.3+dfsg/boot/qlf.pl @=C@3 AJ AJ @9/build/swi-prolog-LBd5Vx/swi-prolog-7.2.3+dfsg/boot/rc.pl @=C@3 AJ AJ @?/build/swi-prolog-LBd5Vx/swi-prolog-7.2.3+dfsg/boot/predopts.pl @=C@3 AJ AJ @</build/swi-prolog-LBd5Vx/swi-prolog-7.2.3+dfsg/boot/packs.pl @=C@3 AJ AJ @</build/swi-prolog-LBd5Vx/swi-prolog-7.2.3+dfsg/boot/dicts.pl @=C@3 AJ AJ @>/build/swi-prolog-LBd5Vx/swi-prolog-7.2.3+dfsg/boot/topvars.pl A@=C 	- A_ @&/usr/lib/swi-prolog/library/dialect.pl A @ expects_dialect@=C@%	u A`  'A Ab @$/usr/lib/swi-prolog/library/error.plprolog_dialect@=C@& Ab Ab @$/usr/lib/swi-prolog/library/lists.pl Ad@=C@G	u Ae  'A Af  Aclists@=C@H Af Af @$/usr/lib/swi-prolog/library/pairs.pl Ag@=C
  A_ A_ @./usr/lib/swi-prolog/library/dialect/sicstus.pl Adialectsicstus@=C
@;	u Ai  'A Am @4/usr/lib/swi-prolog/library/dialect/sicstus/block.pl Al Aj Al@=C
@< Am Am @%/usr/lib/swi-prolog/library/occurs.pl Al Aj Al@=C
@= Am Am @$/usr/lib/swi-prolog/library/debug.pl Al Aj Al@=C
@*	u Ap  'A Aq  Acprolog_debug Aj Al@=C
@+ Aq Aq  Ae Ar Aj Al@=C
@> Am Am  Ac Al Aj Al@=C
@? Am Am  Ae Al Aj Al@=C
@@ Am Am @)/usr/lib/swi-prolog/library/arithmetic.pl Al Aj Al@=C
@"	u As  'A At  Ac
arithmetic Aj Al@=C
@# At At  Ae Au Aj Al@=C  A_ A_ @&/usr/lib/swi-prolog/library/quintus.pl A Aj Al @ compile@=C@O	u Av  'A Ax @4/usr/lib/swi-prolog/library/dialect/sicstus/lists.plquintus Aj Al @ member@=C@#	u Ay  'A A|  Ae
sicstus_lists Aj Al @ @.@=C
  A_ A_ @>/build/spark-MzIYBy/spark-2012.0.deb/simplifier/simplifier.pro A Aj Al@=C
@4	u A~   }#2A A @C/build/spark-MzIYBy/spark-2012.0.deb/simplifier/defectreporting.pro A Aj Al@=C
@!	u A   }#2A A  Ay A Aj Al@=C
@: A A @E/build/spark-MzIYBy/spark-2012.0.deb/simplifier/librarypredicates.pro A Aj Al@=C
@B	u A   }#2A A  Aylibrarypredicates Aj Al@=C
@C A A @&/usr/lib/swi-prolog/library/process.pl A Aj Al@=C
@,	u A  'A A @$/usr/lib/swi-prolog/library/shlib.plprocess Aj Al@=C@*	u A  'A A  Ayshlib Aj Al @ reverse@=C
@- A A  Ay A Aj Al@=C
@. A A @%/usr/lib/swi-prolog/library/option.pl A Aj Al@=C
@(	u A  'A A  Ay
swi_option Aj Al@=C
@) A A  Ac A Aj Al@=C
@D A A @5/usr/lib/swi-prolog/library/dialect/sicstus/system.pl A Aj Al@=C
@7	u@%/usr/lib/swi-prolog/library/socket.pl  'A A  Asocket Aj Al@=C
@8 A A  Ap A Aj Al@=C
@9 A A  Ay A Aj Al@=C@< A A  A A Aj Al @ environ@=C
@>	u A  'A A  Asicstus_system Aj Al@=C
@? A A  A A Aj Al@=C@C A A @</build/spark-MzIYBy/spark-2012.0.deb/simplifier/settings.pro A Aj Al @ declare_settings @=C@"@G A A @</build/spark-MzIYBy/spark-2012.0.deb/simplifier/opdeclar.pro A Aj Al @ declare_operators  hide_operators @=C@] A A @@/build/spark-MzIYBy/spark-2012.0.deb/simplifier/data__system.pro A Aj Al @ add_system_toolname@=C@)	u A  7AA A @A/build/spark-MzIYBy/spark-2012.0.deb/simplifier/data__formats.prodata__system Aj Al @ 	add_state@=C@, A A @?/build/spark-MzIYBy/spark-2012.0.deb/simplifier/ioutilities.pro A Aj Al @ write_terms_to_file@=C@.	u A   }#2A A  Aioutilities Aj Al @ add_type@=C@1 A A @@/build/spark-MzIYBy/spark-2012.0.deb/simplifier/newutilities.pro A Aj Al @ implode_separator_content_list@=C
@/	u A  7AA A  Aynewutilities Aj Al@=C
@0 A A  A A Aj Al@=C@2 A A  A A Aj Al @  A@=C@5 A A  A A Aj Al @ throw_error@=C@4 A A  A A Aj Al @ get_system_toolname@=C@2@7 A A @B/build/spark-MzIYBy/spark-2012.0.deb/common/versioning/version.pro A Aj Al @ toolset_version toolset_copyright toolset_banner_line toolset_distribution@=C@/ A A @D/build/spark-MzIYBy/spark-2012.0.deb/simplifier/data__data_files.pro A Aj Al @ must_get_datafiles_debug@=C@"@A	u A  7AA A  Adata__data_files Aj Al @  A  A@=C@"@D A A  A A Aj Al @  A  A@=C
@` A A @B/build/spark-MzIYBy/spark-2012.0.deb/simplifier/load__switches.pro A Aj Al@=C@#	u A   }#2A A  Aload__switches Aj Al @  A@=CA@& A A @B/build/spark-MzIYBy/spark-2012.0.deb/simplifier/data__switches.pro A Aj Al @ add_source_of_switch add_switch_complexity_limit add_switch_nocontradiction_hunt add_switch_depth_limit add_switch_verbose add_switch_expression_reduction add_switch_inference_limit add_switch_input_file get_switch_input_file add_switch_log add_switch_plain add_switch_renum add_switch_rule_substitution add_switch_simplification add_switch_standardisation @#add_switch_substitution_elimination add_switch_typecheck_only add_switch_user_rules add_switch_wrap add_switch_help add_switch_version add_switch_empty add_switch_usage add_switch_hyp_limit get_switch_hyp_limit get_source_of_switch get_switch_log get_switch_deadpaths add_switch_deadpaths prune_source_of_switch prune_switch_complexity_limit  @!prune_switch_nocontradiction_hunt  prune_switch_depth_limit  prune_switch_verbose  @!prune_switch_expression_reduction  prune_switch_inference_limit  prune_switch_log  prune_switch_plain  prune_switch_renum  prune_switch_rule_substitution  prune_switch_simplification  prune_switch_standardisation  @%prune_switch_substitution_elimination  prune_switch_typecheck_only  prune_switch_user_rules  prune_switch_help  prune_switch_version  prune_switch_empty  prune_switch_usage  prune_switch_wrap  prune_switch_deadpaths  prune_switch_hyp_limit @=C@"@	u A  7AA A  Adata__switches Aj Al @  A  A@=C@2@\ A A  A A Aj Al @ contains_no_dups flatten_list generate_int_list  A@=C@"@b A A  A A Aj Al @ command_line_error  A@=C@*@f A A @B/build/spark-MzIYBy/spark-2012.0.deb/simplifier/parseutilities.pro A Aj Al @ parse_number 
parse_atom parse_atom_silent@=C@,	u A  7AA A  Aparseutilities Aj Al @  A@=C@. A A  A A Aj Al @ atom_to_integer@=C@0 A A  A A Aj Al @  A@=C@k A A  A A Aj Al @  A@=C
@1 A	u@C/build/spark-MzIYBy/spark-2012.0.deb/simplifier/main_simplifier.pro          A A Aj Al@=C
@2 A A  A A Aj Al@=C
@3 A A  A A Aj Al@=C
@4 A A @?/build/spark-MzIYBy/spark-2012.0.deb/simplifier/data__rules.pro A Aj Al@=C@"@/	u A  7AA A  Adata__rules Aj Al @  A  A@=C
@5 A A @F/build/spark-MzIYBy/spark-2012.0.deb/simplifier/data__declarations.pro A Aj Al@=C@"@:	u A  7AA B   Adata__declarations Aj Al @  A  A@=C
@6 A A @=/build/spark-MzIYBy/spark-2012.0.deb/simplifier/data__vcg.pro A Aj Al@=C@"@=	u B   }#2A B  A	data__vcg Aj Al @  A  A@=C@@ B B  A B Aj Al @  A@=C@B B B  A B Aj Al @  A@=C@"@E B B  A B Aj Al @  A  A@=C
@7 A A @=/build/spark-MzIYBy/spark-2012.0.deb/simplifier/data__pfs.pro A Aj Al@=C@"@/	u B   }#2A B  A	data__pfs Aj Al @  A  A@=C@1 B B  A B Aj Al @  A@=C@2 B B  A B Aj Al @  A@=C
@8 A A @D/build/spark-MzIYBy/spark-2012.0.deb/simplifier/data__provenance.pro A Aj Al@=C@"@5	u B  7AA B	  Adata__provenance Aj Al @  A  A@=C@7 B	 B	  A B
 Aj Al @  A@=C@8 B	 B	  A B
 Aj Al @  A@=C
@9 A A @=/build/spark-MzIYBy/spark-2012.0.deb/simplifier/data__hyp.pro A Aj Al@=C@"@,	u B   }#2A B  A	data__hyp Aj Al @  A  A@=C@0 B B  B B
 Aj Al @ path_functions @=C@3 B B  A B
 Aj Al @ 
show_error@=C@"@6 B B  A B
 Aj Al @  A   A @=C@: B B  Ay B
 Aj Al @ list_to_set@=C
@: A A @>/build/spark-MzIYBy/spark-2012.0.deb/simplifier/data__conc.pro A Aj Al@=C@"@'	u B   }#2A B  A
data__conc Aj Al @  A  A@=C@+ B B  A B Aj Al @  B@=C
@; A A @E/build/spark-MzIYBy/spark-2012.0.deb/simplifier/data__proved_conc.pro A Aj Al@=C@"@%	u B  7AA B  Adata__proved_conc Aj Al @  A  A@=C
@< A A @C/build/spark-MzIYBy/spark-2012.0.deb/simplifier/data__subst_hyp.pro A Aj Al@=C@"@$	u B  7AA B  Adata__subst_hyp Aj Al @  A  A@=C@( B B  B B Aj Al @ get_hyp@=C
@> A A  A A Aj Al@=C
@? A A  A A Aj Al@=C
@@ A A  A A Aj Al@=C
@A A A @D/build/spark-MzIYBy/spark-2012.0.deb/simplifier/load__data_files.pro A Aj Al@=C@&	u B  7AA B  Aload__data_files Aj Al @ file_exists@=C@*@) B B  A B Aj Al @  A  A  A@=C@@, B B  A B Aj Al @ get_datafiles_vcg add_datafiles_vcg get_datafiles_dpc add_datafiles_dpc get_datafiles_simplified_vcg add_datafiles_simplified_vcg get_datafiles_summary_dpc add_datafiles_summary_dpc get_datafiles_fdl add_datafiles_fdl get_datafiles_local_user_rule add_datafiles_local_user_rule get_datafiles_global_user_rule add_datafiles_global_user_rule get_datafiles_rule add_datafiles_rule get_datafiles_pfs add_datafiles_pfs get_datafiles_simplified_pfs add_datafiles_simplified_pfs get_datafiles_dec add_datafiles_dec get_datafiles_log add_datafiles_log add_datafiles_debug@=C@E B B  A B Aj Al @  B@=C@"@G B B  A B Aj Al @ @!explode_separator_content_as_list  A@=C@K B B @J/build/spark-MzIYBy/spark-2012.0.deb/simplifier/simplifier_ioutilities.pro B Aj Al @ retrieve_proof_file_kind@=C@2@*	u B9  7AA B;  Asimplifier_ioutilities Aj Al @  B display_header_full display_header_plain  A@=C@"@0 B; B;  A B< Aj Al @  A  B8@=C@4 B; B;  A B< Aj Al @ get_system_start_date_time@=C@:@7 B; B;  B B< Aj Al @ get_provenance_proof_file_kind get_provenance_framework get_provenance_banner get_provenance_date_time @$get_provenance_subprogram_identifier@=C@"@> B; B;  A B< Aj Al @ get_switch_plain  A@=C@2@B B; B;  A B< Aj Al @ toolset_support_line1 toolset_support_line2 toolset_support_line3 toolset_support_line4@=C@R@H B; B;  A B< Aj Al @  B  B!  B/  B'  B3  B1  B#  B%@=C
@B A A @?/build/spark-MzIYBy/spark-2012.0.deb/simplifier/load__rules.pro A Aj Al@=C@!	u BJ  7AA BK  Aload__rules Aj Al @ find_core_type@=C@*@$ BK BK  A BL Aj Al @  B-  B+  B)@=C@*@) BK BK  A BL Aj Al @ add_rule get_rule 
prune_rule@=C@. BK BK  A BL Aj Al @ get_switch_user_rules@=C@*@1 BK BK  A BL Aj Al @ inside_selected_character_class  A  A@=C@6 BK BK  B9 BL Aj Al @ convert_file_for_display@=C@9 BK BK  A BL Aj Al @  A@=C@< BK BK  A BL Aj Al @  B@=C
@C A A @@/build/spark-MzIYBy/spark-2012.0.deb/simplifier/load__system.pro A Aj Al@=C@"	u BT  7AA BU  Aload__system Aj Al @ fetch_date_and_time@=C@% BU BU  A BV Aj Al @ add_system_start_date_time@=C
@D A A @F/build/spark-MzIYBy/spark-2012.0.deb/simplifier/load__declarations.pro A Aj Al@=C@(	u BY  7AA BZ  Aload__declarations Aj Al @  A@=C@j@+ BZ BZ  A B[ Aj Al @ add_declarations_constant add_declarations_function @ add_declarations_record_function add_declarations_type @#add_declarations_unbounded_function @ add_declarations_used_identifier add_declarations_variable get_declarations_type @ get_declarations_used_identifier 
type_alias pre_calculate_legacy_fdl @=C@*@8 BZ BZ  A B[ Aj Al @ @!read_lines_from_file_as_char_list read_line_from_stream  A@=C@*@= BZ BZ  A B[ Aj Al @  A  A 	trim_atom@=C@"@B BZ BZ  B9 B[ Aj Al @ retrieve_declaration_file  BS@=C@R@F BZ BZ  A B[ Aj Al @ atom_to_lower_case parse_all_to_nothing  A  A parse_char_sep_atom_list parse_nothing_to_all  A parse_possibly_signed_atom@=C@P BZ BZ  B B[ Aj Al @  BA@=C
@E A A @D/build/spark-MzIYBy/spark-2012.0.deb/simplifier/load__provenance.pro A Aj Al@=C@B@"	u Bp  7AA Bq  Bload__provenance Aj Al @  BA add_provenance_banner add_provenance_date_time add_provenance_framework add_provenance_proof_file_kind @$add_provenance_subprogram_identifier@=C@"@* Bq Bq  A Br Aj Al @  A  Bg@=C@. Bq Bq  A Br Aj Al @  A@=C@*@1 Bq Bq  B9 Br Aj Al @ retrieve_proof_file  BS  B:@=C@B@6 Bq Bq  A Br Aj Al @  A  A 
parse_line  Bm  Bl  Bn@=C@"@> Bq Bq  A Br Aj Al @  B  B/@=C
@F A A @A/build/spark-MzIYBy/spark-2012.0.deb/simplifier/load__vcg_dpc.pro A Aj Al@=C@"@#	u Bz   }#2A B{  A
load__vcg_dpc Aj Al @  A  A@=C@"@' B{ B{  A B| Aj Al @  B  B!@=C@@+ B{ B{  B B| Aj Al @ add_vcg_file_handle get_vcg_file_handle add_vcg_conclusion add_vcg_hypothesis 
add_vcg_trace 
add_vcg_vc 
get_vcg_vc @!add_zombiescope_no_check_required @!get_zombiescope_no_check_required prune_vcg_file_handle  prune_all_vcg_vc  prune_all_vcg_hypothesis  prune_all_vcg_conclusion  @'prune_all_zombiescope_no_check_required @=C@*@; B{ B{  A B| Aj Al @  Bh @&read_up_to_number_of_chars_from_stream  B@=C@"@@ B{ B{  A B| Aj Al @ unique_atom  A@=C@:@D B{ B{  A B| Aj Al @  A  A parse_natural_int  Bl  Bn@=C@"@K B{ B{  A B| Aj Al @  A  A@=C
@G A A @=/build/spark-MzIYBy/spark-2012.0.deb/simplifier/load__pfs.pro A Aj Al@=C@"@!	u B  7AA B  A	load__pfs Aj Al @  A  A@=C@% B B  A B Aj Al @  B/@=C@:@( B B  B B Aj Al @ add_pfs_action 
add_pfs_pf add_pfs_statement add_pfs_successor_statement add_pfs_traversal_condition@=C@*@/ B B  A B Aj Al @  Bh  B  A@=C@4 B B  A B Aj Al @  B@=C@"@7 B B  A B Aj Al @  A  B@=C
@H A A @@/build/spark-MzIYBy/spark-2012.0.deb/simplifier/processrules.pro A Aj Al@=C
	u B  7AA B  Aprocessrules Aj Al@=C
@  B B  A B Aj Al@=C
@I A A  B9 A Aj Al@=C
@K A A  A A Aj Al@=C@R@Q A A  A A Aj Al @  B rename_file last  B  A process_create process_wait datime@=C@"@$ A	u@</build/spark-MzIYBy/spark-2012.0.deb/simplifier/userules.pro          A A Aj Al @  A  A@=C  A_ A_ @$/usr/lib/swi-prolog/library/qsave.pl A Aj Al @ 
qsave_program@=C
@#	u B  'A B  Ayqsave Aj Al@=C
@$ B B  A B Aj Al@=C
@% B B  Ac B Aj Al@=C  A_ A_ @./usr/lib/swi-prolog/library/prolog_autoload.pl B Aj Al @ autoload@=C
@"	u B  'A B  Aprolog_autoload Aj Al@=C
@# B B  Ac B Aj Al@=C
@$ B B @(/usr/lib/swi-prolog/library/aggregate.pl B Aj Al@=C
@'	u B  'A B @&/usr/lib/swi-prolog/library/ordsets.pl	aggregate Aj Al@=C
@7	u B  'A B @#/usr/lib/swi-prolog/library/oset.plordsets Aj Al@=C
@( B B  Ah B Aj Al@=C
@) B B  Ac B Aj Al@=C
@* B B  Ay B Aj Al@=C
@+ B B @$/usr/lib/swi-prolog/library/apply.pl B Aj Al@=C
@3	u B  'A B  Acapply Aj Al@=C
@% B B @./usr/lib/swi-prolog/library/prolog_codewalk.pl B Aj Al@=C
@"	u B  'A B  Aprolog_codewalk Aj Al@=C
@# B B @%/usr/lib/swi-prolog/library/record.pl B Aj Al@=C
@&	u B  'A B  Acrecord Aj Al@=C
@$ B B  Ap B Aj Al@=C
@% B B  B B Aj Al@=C
@& B B  Ay B Aj Al@=C
@' B B @3/usr/lib/swi-prolog/library/prolog_metainference.pl B Aj Al@=C
	u B  'A B  Ayprolog_metainference Aj Al@=C
 B B  B B Aj Al@=C  A_ A_ @#/usr/lib/swi-prolog/library/date.pl Az Aj Al @ date_time_value@=C  A_ A_ @'/usr/lib/swi-prolog/library/backcomp.pl A Aj Al @ concat@=C@U	u B  'A B  Bbackward_compatibility Aj Al @ maplist@=C@"@V B B @%/usr/lib/swi-prolog/library/system.pl B Aj Al @ lock_predicate unlock_predicate@=C
@'	u B  'A B  Acswi_system_utilities Aj Al@=C@W B B  Ae B Aj Al @ sum_list@=C  A_ A_ @&/usr/lib/swi-prolog/library/listing.pl B Aj Al @ portray_clause@=C
@&	u B  'A B  Ayprolog_listing Aj Al@=C
@' B B @'/usr/lib/swi-prolog/library/settings.pl B Aj Al@=C
@0	u B  'A B  Acsettings Aj Al@=C
@1 B B @(/usr/lib/swi-prolog/library/broadcast.pl B Aj Al@=C
@2 B B  Ap B Aj Al@=C
@3 B B  A B Aj Al@=C
@4 B B  As B Aj Al@=C
@( B B  A B Aj Al@=C
@) B B  Ac B Aj Al@=C  A_ A_ @,/usr/lib/swi-prolog/library/prolog_clause.pl B Aj Al @ clause_info@=C@&	u B  'A B  Ay
prolog_clause Aj Al @  @@=C@' B B  Ao B Aj Al @ sub_term@=C
@( B B  Ap B Aj Al@=C
@) B B  A B Aj Al@=C
@* B B  B B Aj Al@=C
@+ B B @,/usr/lib/swi-prolog/library/prolog_source.pl B Aj Al@=C
@-	u B  'A B @(/usr/lib/swi-prolog/library/operators.pl
prolog_source Aj Al@=C
@. B B  Ae B Aj Al@=C
@/ B B  Ap B Aj Al@=C
@0 B B  A B Aj Al@=C
@1 B B  Ac B Aj Al@=C
@2 B B  B B Aj Al@=C  A_ A_ @+/usr/lib/swi-prolog/library/prolog_stack.pl Ar Aj Al @ 	backtrace@=C
@'	u B  'A B  Bprolog_stack Aj Al@=C
@( B B  Ap B Aj Al@=C
@) B B  Ac B Aj Al@=C
@* B B  Ay B Aj Al@=C
@+ B B  A B Aj Al@=C  A_ A_ @'/usr/lib/swi-prolog/library/readutil.pl Al Aj Al @ read_line_to_codes@=C
@+	u B  'A B  A	read_util Aj Al@=C
@, B B  Ac B Aj Al@=C
@- B B  A B Aj Al@=C  A_ A_ @&/usr/lib/swi-prolog/library/filesex.pl B Aj Al @ directory_file_path@=XD  t  t @&t  t 
atom_codesD  t  t t  t $source_term 	 D  t  t t  t  B 
O  BCDU  @6@ @ @ 
@ @8 B @E	@+end_of_file@M@?@R@@@S@<XD  t  t t  t  @a 	 D  t  t t  t  @a 
O  @`C
B  @6@8is_list @?@9$member @<CB   
@=XD  t  t @&t  t thread_statisticsD  t  t @&t  t format_timeD  t  t t  t  B 	 D  t  t t  t  B 
O  BCK  

@6@ @9$member_ @<XD  t  t @&t  t  @D  t  t @&t  t argD  t  t t  t 
$load_file 	 D  t  t t  t  B 
O  BCFu  @6@D
@1 @@0@5@8 @@M@Q@1 	@5@
 Aprolog_load_file B@?@<CFx  @6@1 @@0@5@8 @@?@8$assert_load_context_module @9$qdo_load_file @<C@"F|  @6@3@1 @R A@5@4@1 @]read@5@5@/@8absolute_file_name @ @8 B@ @9
$mt_load_file @<XD  t  t t  t $hide @D  t  t @t  t C D  t  t t  t  C 	 D  t  t t  t  C 
O  C	C	@  @6 	 @9  @<XD  t  t @&t  t current_char_conversionD  t  t @&t  t $inference_limit_exceptD  t  t @&t  t 
nb_currentD  t  t t  t $permission_error 	 D  t  t t  t  C 
O  CCK  @6@1 @@1 @e	
@5@0@5@9 @@<XD  t  t t  t  @! 	 D  t  t t  t  @! 
O  @ C@0A  @6@A@&@/	@/
@8
$init_goal @E@/@1$initialization_error	
@5@8catch @M@R@@@8$initialization_failure @R@F@@@S@G	@F@<XD  t  t @&t  t upcase_atomD  t  t t  t $export_list 	 D  t  t t  t  C 
O  CCJ  @6@8 B@?@9$do_export_list @<CJ  @6@T@1 @instantiation_error@0@5@9 @@<CJ  @6@1 @@1
type_errorlist@5@0@5@9 @@<XD  t  t t  t  @ @D  t  t @t  t @ D  t  t t  t  @ 
O  @CE  @6@3@1 A$ A&@5@4@1 A' @.@5@4@1 @ @.@5@5@9 A)@<XD  t  t t  t $skip_script_line 	 D  t  t t  t  C% 
O  C%CE:  @6@E	#@8	peek_char @M	
@9skip @@@S@<XD  t  t @&t  t exportD  t  t @&t  t split_stringD  t  t @&t  t mutex_propertyD  t  t @&t  t write_lengthD  t  t t  t $qend 	 D  t  t t  t  C2 
O  C2CF  state
	
@6@0@8 @@8$set_compilation_mode @9
$qlf_close  @<XD  t  t t  t 
$start_module 	 D  t  t t  t  C< 
O  C<C@&H  @6@/@8 A
@/
@0@8source_location @,
@-@ @ 
@8	same_file @?@8	nb_setarg  @.@9 CD@<C@_H  @6@/@8 B @8 CD@/
@ 
@8 @@0@/@8 C>@1redefine_module@.@5@  @-@8 @@ @/@/@8
$module_class @ @ @8 @C@ @ @ @  @-@8$declare_module @/@8 C @1$qlf_start_module@5@8$ifcompiling @ @ @8$export_ops @8
$qset_dialect 
end_module@9 CD@<XD  t  t @&t  t  @pD  t  t @&t  t 
mutex_lockD  t  t @&t  t nl D  t  t @&t  t $module_propertyD  t  t t  t $register_derived_source 	 D  t  t t  t  Ca 
O  CaCEm  
 @k@6@?@<CEn  @6@1$derived_source_db@0@0@5@8 @I@/
@8	time_file @1 Cc	
@5@9assert @<XD  t  t @&t  t term_variablesD  t  t t  t $canonicalise_extensions 	 D  t  t t  t  Cl 
O  ClCC  @6@?@<CC  

@6@? @8$must_be @ @8$canonicalise_extension @ @ 
@9 Cm @<CC  

@6@9 Cq@<XD  t  t @&t  t current_format_predicateD  t  t @&t  t mutex_statistics D  t  t @&t  t $unload_fileD  t  t t  t 
$loading_file D  t  t t  t  Cx ADD  t  t t  t  Cx 	 D  t  t t  t  Cx 
D  t  t @&t  t  D  t  t @&t  t compound_name_arityD  t  t @&t  t seen D  t  t @&t  t add_import_moduleD  t  t t  t 	$qlf_file 	 D  t  t t  t  C| 
O  C|CF#   @@6@1 @@0@5@ @8 @@?@<CF%  	 Aw@6@/
@8$spec_extension @ 
 A@ B A
 B@?@<C@YF(  @6database@8$compilation_mode @/
@/@8 @@  A@ B C@/ @@ B C@ 
@ @8 @@E@% C@8 @b@E@8$qlf_up_to_date @M@)qload@@
@Cwrite@8 @b@M@)qcompile@P@M@?@@@C@ @8	$qlf_auto @M@?@) C@P@<CF8   	 Aw@=XD  t  t t  t $is_options 	 D  t  t t  t  C 
O  CCL*  @6@0@8is_dict @?@<CL,  @6@8 B@E

@+@M
@S@F	@@@"
	@#@0@0@9
$is_option @<XD  t  t @&t  t ==D  t  t @&t  t $source_file_predicatesD  t  t @&t  t variant_sha1D  t  t t  t $at_halt D  t  t t  t  C ADD  t  t t  t  C AED  t  t t  t  C 	 D  t  t t  t  C 
D  t  t t  t call_cleanup @D  t  t @t  t C  @ D  t  t t  t  C 
O  CC	A@  @6 @.@9 A3@<XD  t  t @&t  t =D  t  t @&t  t  @D  t  t @&t  t garbage_collect_atoms D  t  t @&t  t 
dict_pairsD  t  t t  t $end_load_file 	 D  t  t t  t  C 
O  CC@'Hv  @6 @.@8 CG@?@/	@8 CD@/
@8 CG@8 @@1$qlf_start_file
@5@8 CT
$qlf_end_part@9 CT@<C
H}  @6@/	@8 CG@9 C @<XD  t  t @&t  t $new_findall_bag D  t  t @&t  t thread_get_messageD  t  t @&t  t tty_get_capabilityD  t  t @&t  t put_codeD  t  t @&t  t $get_clause_attributeD  t  t @&t  t flagD  t  t @&t  t open_stringD  t  t @&t  t 	peek_byteD  t  t t  t $relative_to 	 D  t  t t  t  C 
O  CC@YCA  
@6@N
@0@1relative_to@.@5@8 @@O
@E@ @8 @U@M@'
@@@E @ @8atom_concat @M@S@@@ @9file_directory_name @F@@@$@E
@+	cwd@M@9working_directory @F@@@C@+	 @@M@/@0@8 C>@ @9 C@P@F@<XD  t  t @&t  t message_queue_createD  t  t @&t  t  CSD  t  t @&t  t  @WD  t  t t  t $prolog_list_goalpublicD  t  t t  t  C 	 D  t  t t  t  C 
O  CCLq  @6@ Bprolog_list_goal B@?@<CLs  @6@; Blisting B@<XD  t  t @&t  t  D  t  t @&t  t $set_prolog_stackD  t  t @&t  t string_codeD  t  t t  t $load_files 	 D  t  t t  t  C 
O  CCE  @6@T@?@9$instantiation_error @<CE  @6@?@<C@&E  @6@1 @@0@5@8 @@?@E@8 @@M@9 B @@
@1 @@1 C" @5@0@5@9 @@<CE  @6@"@#@? C$@8 Cn@9$load_file_list @<CE  @6@9$load_one_file @<XD  t  t t  t $iso @D  t  t @t  t C D  t  t t  t  C 	 D  t  t t  t  C 
O  CC	@V  @6pred @@9
$set_pattr @<XD  t  t @&t  t $moduleD  t  t @&t  t locale_destroyD  t  t t  t  CY 	 D  t  t t  t  CY 
O  CXC@<J  op




@6@1,@1 C@2 	
@5@2
$export_op
	
@5@/@1 @ @@5@8 C@ @9 CW@<CJ   @=XD  t  t @&t  t $get_pidD  t  t @&t  t recordedD  t  t t  t $directive_mode 	 D  t  t t  t  C 
O  CCC  @6@E
@/	@8 @G @M
@'	@@@) C@F	@<XD  t  t @&t  t string_lowerD  t  t @&t  t b_getvalD  t  t t  t  C @D  t  t @t  t C  D  t  t t  t  C 
D  t  t t  t  C @O  CC
@  @6@1 C	@5@@<XD  t  t @&t  t 
deterministicD  t  t @&t  t 
$prof_nodeD  t  t @&t  t get_charD  t  t t  t $set_dialect 	 D  t  t t  t  C 
O  CCG  @6@1 Aj@.	@5@8 @@?@9 Aa @<CG   @=XD  t  t @&t  t copy_stream_dataD  t  t t  t $get_files_argv 	 D  t  t t  t  C 
O  CCKm  @6@?@<CKn  -c

@6@?@<CKo  

@6@9 C @<XD  t  t @&t  t seeingD  t  t @&t  t get_single_charD  t  t @&t  t 
mutex_trylockD  t  t t  t $ensure_extensions 	 D  t  t t  t  C 
O  CCC   
@=CC  

@6@ @ 
@8 @@ @ @9 C @<XD  t  t @&t  t 
current_inputD  t  t t  t  Cd D  t  t t  t  Cd ADD  t  t t  t  Cd 	 D  t  t t  t  Cd 
D  t  t @&t  t 
string_concatD  t  t @&t  t $put_quotedD  t  t @&t  t write_canonicalD  t  t @&t  t prolog_choice_attributeD  t  t @&t  t $add_findall_bagD  t  t t  t $first_term 	 D  t  t t  t  D 
O  DCH  ?-

@6@?@1:-
@5@ @ @9 D @<C@eH   D

@6@U
@E@>@E@"
 @

@#@M@(@@@"
 @


@#@M@?@ @/@ @8 @@ @ @ @ @8 C= @ @9$module3 @F@@@C@"
 C
@#@M@?@ @ @8 C @R@P@G@G@<CH  @6@ @ @8$start_non_module @9
$compile_term @<XD  t  t @&t  t nth_integer_root_and_remainderD  t  t @&t  t current_predicateD  t  t t  t  @ 	 D  t  t t  t  @ 
O  @CGH   @=CGI   @
	

@6@8 @r@ @9 @@<XD  t  t t  t goal_expansion ADD  t  t t  t  D AED  t  t t  t  D 
O  DCAL Aq Aqdebug
 @.@6@7
 Ar@E A> @.@8current_prolog_flag @M@S@@@8debug_topic D@R@<CAR Aq Aq	debugging
fail@6@7 D@E A> @.@8 D@M@S@@@8 D!@R@<CAX Aq Aq	assertion@6@7 D A> @.@8 D@)	 @.@<C@&A[ Aq Aqassume@6@7 D
informational@1
compatibility@2renamed@1  D*@5@2  D(@5@8 @ D A> @.@8 D@)	 @.@<CA At At@6@7
 Au@9math_goal_expansion D1@<C@*@u Am Am C


 C
  A@6@7
 Al@D
@ @8	qualified D5@M
@Q Ak Al@9prolog_load_context @4@<C@;@ Am Am A%


;*->
@6@7 D5 Ak Al@8 D9@D@/
@3
@4@4@5@8 B
occurs@+
!@M@Q@@@F
@<C@ @ Am Am 

 
@6@7 D5@8 @@ @8
rename_module D5 Ak Al@9 D9@<C@ Am Am  A!
 A*
 A$changed@=CA Am Ambb_put

	nb_setval
@6@7 D5@ @9bb_key D5@<CA Am Ambb_get

 C

@6@7 D5@ @9 DO@<CA	 Am Am	bb_delete

 C DT
	nb_delete@6@7 D5@ @9 DO@<C@"A Am Am	bb_update


 C DT

 DM
@6@7 D5@ 
@9 DO@<XD  t  t t  t  C  	 D  t  t t  t  C  
O  BC@'F  @6@1 @@.@5@ @8 @@?@1$qstart
@.
@5@1
$do_load_file	
@5@1 C3
@5@9 @#@<C	F  @6@ @9 D^ @<XD  t  t @&t  t 
line_positionD  t  t @&t  t tabD  t  t @&t  t exists_fileD  t  t @&t  t $qlf_start_sub_moduleD  t  t t  t  @B 	 D  t  t t  t  @B 
O  @ACI-  @6@8repeat  query@1 CJ	
@5@8 @@/@8 C @ @/
@8 @B @?@'
@<XD  t  t @&t  t put_byteD  t  t t  t  C 	 D  t  t t  t  C 
O  CC@[  @6@T@1 @ C!@0@5@9 @@<C@^  @6@?@<C@_  
@6@?@ @ @8 Do @ 
@ @9 Dp@<C@b   C


@6@?@ @ @8 Dp@ 
@ @9 Dp@<C@e   


@6@?@ 
@ @ @9 Dp@<C@g   C@6@?@1 	@5@ @9 C
@<C@0@i  	directive@6@?@1 @1 	@5@5@1 @@.@0@5@1 @ @@2 @@2context@1 @5@0@5@9 C@<XD  t  t @&t  t 
$term_sizeD  t  t @&t  t  DXD  t  t t  t  C 	 D  t  t t  t  C 
O  CC@9E  @6@8 @@1expand@.@5 @-@8 @@+ @.@?@/@8expand_file_name @E
@"

@#@M@S@@@&
@ 
@3@1 Du @-@5
@5@9 C @<CF  @6@1 	@5@/@/@8strip_module @ @ @9 C@<XD  t  t t  t 	noprofile @D  t  t @t  t D~ D  t  t t  t  D~ 
O  DC	@T  @6 C D~@9 C@<XD  t  t t  t  @ 	 D  t  t t  t  @ 
O  @CD    @=C@(D  
@6@E
see@8 CG@M
@ @9 D @F@@@ @/@8 D@b@g@c@o@x@<XD  t  t @&t  t $atom_referencesD  t  t @&t  t 
$on_signalD  t  t t  t  C 	 D  t  t t  t  C 
O  CCC  @6@E
@/	@8$compilation_mode_store @M
@'	@@@) C@F	@<XD  t  t @&t  t 
open_xtermD  t  t @&t  t string_upperD  t  t t  t $file_condition 	 D  t  t t  t  D 
O  DCC   exists@=CC    @R@=CC    @]@=XD  t  t @&t  t shellD  t  t @&t  t 
nb_linkvalD  t  t @&t  t $profileD  t  t @&t  t 	setlocaleD  t  t t  t $translate_options 	 D  t  t t  t  D 
O  DCKr   @=C@HKs  

@6@3 @k@4 @k@.@5@8 @ @3 C@5@/@/@8$split @?@/@ @8 @ @/@8$compile_option_type @ @ @/@8  @ @3@4@5@8=.. @ @ 
@9 D @<CK{  

@6@9 D@<XD  t  t t  t  A+ @D  t  t @t  t A+ D  t  t t  t  A+ 
O  DCE  @6@9 A)@<XD  t  t t  t  @D  t  t @t  t  A#D  t  t t  t  
O  DCE  
@6@?@9consult @<CE   

@6@1 
@4	@5@9 D@<XD  t  t @&t  t putD  t  t @&t  t $destroy_moduleD  t  t t  t  C ADD  t  t t  t  C AED  t  t t  t  C 	 D  t  t t  t  C 
O  CCB	s@$/usr/lib/swi-prolog/boot/toplevel.pl  ]wA D  D 	$toplevelset_default_history  DB@=CB D D  D  Dcreate_prolog_flagquery_debug_settings D @- @-  DB@=C@(	s@#/usr/lib/swi-prolog/boot/topvars.pl  ]wA D  D toplevel_variables Cfx  A$  D@(@=C  A_ A_  @k  Aload_foreign_library  Aforeign A  A@0@=C  A_ A_  @k  A D  A D Ainstall_socket  A@@=C  A_ A_  @k  Blink_foreign  B@_@=C  A_ A_  @k  A D files_ex Dfiles
install_files  B@9@=XD  t  t @&t  t 
write_termD  t  t @&t  t term_attvarsD  t  t @&t  t tellD  t  t @&t  t  @zD  t  t @&t  t 
set_outputD  t  t t  t $merge_options 	 D  t  t t  t  D 
O  DCLd  @6@9put_dict @<XD  t  t @&t  t 
thread_createD  t  t @&t  t mutex_unlockD  t  t @&t  t stringD  t  t t  t $load_additional_boot_files  CD  t  t t  t  D  	 D  t  t t  t  D  
O  D C@)L  @6argv@/@8 D@/	@8 C@E
@-	@M
Loading additional boot files~n@8 @ @4@1  A	@5@8$load_wic_files additional boot files loaded~n@9 D@@@S@<XD  t  t t  t $prepare_load_stream 	 D  t  t t  t  D 
O  DC@_EG   C4

@6@E
@*@1 @@0@5@8 @=@M
@) @.@E@1position@0@5@8 @=@M@) @.@@@) @-@1record_position @.@5@9 @@@@'@) @-@1 @	@5@8 @@E@1 D@0@5@8 @=@M@) @.@@@) @-@1 D @.@5@9 @@<XD  t  t @&t  t $default_predicateD  t  t @&t  t 
noprotocol D  t  t t  t  @ 	 D  t  t t  t  @ 
O  @CL=  @6@8 C @?@3@5@9:< @<CL@  @6@9 @@<XD  t  t @&t  t prolog_frame_attributeD  t  t @&t  t $end_consultD  t  t @&t  t $mark_executableD  t  t t  t  C @D  t  t @t  t C  @ D  t  t t  t  C 
D  t  t t  t  C @O  CCA  @6@@@<XD  t  t t  t  @ @D  t  t @t  t @ @D  t  t t  t  @ 
D  t  t t  t  @ @O  DC@  @6@@<XD  t  t t  t @ @D  t  t @t  t D  A#D  t  t t  t  D 
O  DC	@  @6@1 D	@5@@<XD  t  t @&t  t 
set_prolog_IOD  t  t t  t $valid_term 	 D  t  t t  t  D 
O  DCHp  @6@T@? @@1 @ C!@0@5@9 @@<CHs  @6@-@<XD  t  t t  t $open_source 	 D  t  t t  t  D 
O  DC@ADz   @



restore


@6@?@ @/@8
$context_type @ @8  @ @ @8
$set_encoding @ @ 
@ @8 D @1$load_input@1 @
@5@5@ @9asserta @<C@-D  close	

@6@ @/@8 D@ @8 D C@8 @ @ @8 D@1 D	@5@ 
@9 D@<XD  t  t t  t $save_file_scoped_flag 	 D  t  t t  t  D 
O  DCGA   @
	
@6@8 A< @9 D@<XD  t  t @&t  t put_charD  t  t t  t $store_admin_clause 	 D  t  t t  t  E  
O  E C@"J  @6@0@8 C>@?@1 A
@.@5@1$store_admin_clause2	
@5@1$end_aux
@5@9 @#@<C	J  @6@ @9 E @<XD  t  t @&t  t trim_stacks D  t  t t  t $load_ctx_options 	 D  t  t t  t  E	 
O  E	CH6   @=CH7  


@6@8$load_ctx_option @?@ @ @9 E
 @<CH:  

@6@9 E@<XD  t  t @&t  t plusD  t  t @&t  t thread_propertyD  t  t @&t  t  CD  t  t t  t  C 	 D  t  t t  t  C 
O  CCE   @=CE  @6@1 C	
@5@/
@1 @ @
@5@8 C@ @9 C@<XD  t  t t  t thread_local @D  t  t @t  t E D  t  t t  t  E 
O  EC	@S  @6 C E@9 C@<XD  t  t @&t  t $rc_membersD  t  t @&t  t ttyflush D  t  t t  t  B 	 D  t  t t  t  B 
O  BCD\  	@6@D@8ground @M@Q@?@9 C@<C@LD_  

 @


@6@?@ @ @         @/@8$record_included @1 D@1 @@5@.@5@1
$term_in_file	

@3@5@5@1
$close_source@5@9 @#@<C@SDg  

@6@/@3@1 @R A@5@4@1 @] C@5@5@8 C@ @/@8 Ce@ @ @ @/@8 E@1 D@.@.@5@1 E	

@3@5@5@1 E@5@9 @#@<XD  t  t t  t $undefined_procedure CD  t  t t  t  E 	 D  t  t t  t  E 
O  ECA  @6 A@1 	
@5@/@8$prefix_module undefined_predicate@ @/
@ B	exception B@?@'
@<CA  @6 B @.@8 D@8	$autoload @?@)retry@<CA    @@=XD  t  t @&t  t $atom_completionsD  t  t t  t $import_all 	 D  t  t t  t  E- 
O  E-C@JI  	
@6@/
@/@ @8$import_all2 @A@7@+ @.@E@ @ 
@/@8
$list_to_conj @M@1 	@5@8 C. @1 AA@2 E6@2 	@5@8 CT@@@S@F@/@0@8 C>@ @ @8 CW@@@S@G@<XD  t  t @&t  t  A0D  t  t @&t  t $size_streamD  t  t t  t $recover_and_rethrow CD  t  t t  t  E9 	 D  t  t t  t  E9 
O  E9CA&  @6@1 @	@5@8 C @?@<XD  t  t @&t  t getD  t  t t  t $execute_directive_2 	 D  t  t t  t  E> 
O  E>CJ/  encoding
@6@?@0@8 C>@/@8 D @ @1 E@
@5@9 @@<CJ3  @6@/
@8$expand_directive @?@9$execute_directive @<C@BJ6  @6@D
 C@8 C@M
@Q@?@/
@8$add_directive_wic2 @E@'@+
 @@M@/ C@8 C @1 C@.@5@1$execute_directive_3@5@1 C@1 C7@5@2 @F@5@9 @#@@@9 EO @G@<CJC  @6@9 EQ@<XD  t  t t  t 	$chk_file 	 D  t  t t  t  ER 
O  ERCC  @6@8compound @0@8functor @? C@/
@8 C @ @ 
@ @9$chk_alias_file @<CC  @6@D@8atomic @M@Q@?@/
@8$segments_to_atom @ 
@ @ @9 ES @<CC  @6@8is_absolute_file_name @?@/
@8$extend_file @ 
@8$file_conditions @ 
@ @9$absolute_file_name @<C@+C  @6 @@/
@8 EZ@3
@4 @4@5@/@8atomic_list_concat @ @/@8 Eh@ @8 Ek@?@ @ @9 En@<CC$  @6@/
@8 Eh@ 
@8 Ek@ 
@ @9 En@<XD  t  t @&t  t get_byteD  t  t t  t  D_ 	 D  t  t t  t  D_ 
O  D^C@9F  @6@1derived_from@.@5@  @k@8 @@ @8 Cb @/
@/@ @8 C} @E@+ C@M@1 
@5@ @9 C @@@@ 
@ @9 @v @<XD  t  t @&t  t profilerD  t  t @&t  t 
current_opD  t  t @&t  t  CD  t  t t  t  D> @D  t  t @t  t D=  D  t  t t  t  D> 
D  t  t t  t  D> @O  D=C@   

 

@6@?@1 
@2 D=@5@@<C@ @   

 


@6@1 
@2 D=@2 
@5@@<XD  t  t @&t  t $nospyD  t  t @&t  t $depth_limit_trueD  t  t @&t  t thread_selfD  t  t @&t  t 	$fetch_vmD  t  t t  t  C  	 D  t  t t  t  C  
O  CCJ
  
@6@?@<C@,J  @6@?@1$export1	
@.
@5@/@1 C@1 @ @@5@2 C

@5@8 C@ @ 
@9 C@<XD  t  t t  t  @H ADD  t  t t  t  @HvolatileD  t  t t  t  @H ED  t  t t  t  @H 	 D  t  t @&t  t >=D  t  t @&t  t  @'D  t  t @&t  t  @ND  t  t @&t  t  C_D  t  t @&t  t del_dictD  t  t t  t $derived_source 	 D  t  t t  t  E 
O  ECEv  @6@9 Cc @<XD  t  t @&t  t  CPD  t  t @&t  t  CkD  t  t @&t  t prolog_skip_levelD  t  t t  t  D D  t  t t  t  D ADD  t  t t  t  D AED  t  t t  t  D 
D  t  t t  t compile_aux_clauses 
O  EC	K"  @6xref @.@8 D@?@<CK$  @6@/	@0@8 C>@9$compile_aux_clauses @<XD  t  t @&t  t  DD  t  t @&t  t $rc_append_fileD  t  t @&t  t  @D  t  t @&t  t 
b_set_dictD  t  t t  t $member_rep2 	 D  t  t t  t  E 
O  ECD   	@=CD  



@6@?@ @3
@5@9 E @<CD  




@6@ @ 
@9 E@<XD  t  t t  t  E 	 D  t  t t  t  E 
O  EC@E  

message
include_file @
 @	
@6@/@/@8 C>@?@ @8 @ E@ @/@ @8 @@ @1 E@2 @@2 @	
@5@8 @@3
@5@/@8$last @E@+@A C@8 C@@@ @8$qlf_current_source @M@1  @2	$included

@5@0@ @1 @5@9 E @@@ @ 
@ @ @9$qlf_include @<CE.    @.@=XD  t  t @&t  t message_queue_destroyD  t  t @&t  t random_propertyD  t  t @&t  t tty_gotoD  t  t @&t  t read_stringD  t  t @&t  t eraseD  t  t @&t  t $atom_hashstatD  t  t @&t  t  ArD  t  t t  t $noload 	 D  t  t t  t  E 
O  ECF   @.@6@?@R@<CF   A&@6@8source_file @4@?@<CF   DJ@6@0@/@8 E @/@8 Ce@ @ @8@=< @?@<CF   DJ@6@/ A@8$time_source_file @/@8$modified_id @ @ @8 E@?@<XD  t  t t  t once @D  t  t @t  t E D  t  t t  t  E 
D  t  t t  t  E @O  EC@  @6@@?@<XD  t  t @&t  t varD  t  t t  t $add_dialect 	 D  t  t t  t  E 
O  ECH,  @6 @q@/
@8 D@-
swi@?@"	 Aj
@#@<CH/   
@=XD  t  t @&t  t $complete_atomD  t  t t  t $exception_in_directive 	 D  t  t t  t  E 
O  ECJm  @6 @@8 @@R@<XD  t  t @&t  t 	$break_atD  t  t @&t  t text_to_stringD  t  t t  t 	$top_file 	 D  t  t t  t  E 
O  ECA  inputinclude

@6@?@ @ @9 E @<CA   	@=XD  t  t @&t  t get0D  t  t @&t  t  CD  t  t t  t $expand_goal 	 D  t  t t  t  E 
O  EC  A_ A_@6@9expand_goal
$expand@<XD  t  t t  t  B 	 D  t  t t  t  B 
O  BC@gHa  @6@!@1 C5 @.@0 @. @-	 @k@5@#@A@C@0@0@/
@/@0@ @8 B @ 
@8 D @E@  @.@8 CG@M@ 
@ @ @ @8 D@  @-@8 CD@@@ 
@ @8 D@  @.@8 CG@@@ @8 C @G
@?@ @9 CG@<XD  t  t @&t  t $spyD  t  t @&t  t stream_pairD  t  t @&t  t b_setvalD  t  t @&t  t writeqD  t  t t  t  D ADD  t  t t  t  D ED  t  t t  t  D ED  t  t t  t  D 	 D  t  t @&t  t compile_predicatesD  t  t @&t  t 	char_typeD  t  t @&t  t $clauseD  t  t @&t  t 
thread_signalD  t  t t  t  @ 	 D  t  t t  t  @ 
O  @CC  @6@9 @@<XD  t  t @&t  t  CjD  t  t t  t $compile_wic  CD  t  t t  t  E  	 D  t  t t  t  E  
O  E C@$Kd  @6os_argv@/@8 D@/	@8 C@/
@8 D
compileout@/@8 @ @8attach_packs 
$pack@ B D B@ @; B B
 B@<XD  t  t @&t  t told D  t  t t  t  @ @D  t  t @t  t @ @ @ @ @ @ @D  t  t t  t  @ 
D  t  t t  t  @ @O  EC@  @6@ @ @ 
@ @@<XD  t  t t  t  D 	 D  t  t t  t  D 
O  DCH  @6@T@?@9 C@<C
H   D
@6@?@ @9 EF@<C
H   D
@6@?@ @9 EF@<CH   $source_location



@6@?@ @1 
@5@9 E @<CH  @6@1
$store_clause	
@5@/@1 @ @@5@9 C@<XD  t  t @&t  t  AD  t  t t  t  D 	 D  t  t t  t  D 
O  DCD   @@6@?@<CD   
 E@=XD  t  t @&t  t $get_predicate_attributeD  t  t @&t  t prompt1D  t  t t  t term_expansion D  t  t t  t  E ADD  t  t t  t  E AED  t  t t  t  E 
D  t  t t  t $master_file 	 D  t  t t  t  E 
O  ECE4  @6@/
@0@0@8 E @?@9 E @<CE7   
@=XD  t  t t  t $in_system_dir 	 D  t  t t  t  F 
O  FCF_  @6home@/	@8 D @0@0@9sub_atom @<XD  t  t t  t  E ADD  t  t t  t  E AED  t  t t  t  E 	 D  t  t t  t  E 
O  EC	@g A A  A~@g A   }#2A@=C	@[ A A  A@[@=/build/spark-MzIYBy/spark-2012.0.deb/simplifier/utilities.pro   }#2A@=C	@\ A A  A@\@</build/spark-MzIYBy/spark-2012.0.deb/simplifier/dynamics.pro  7AA@=C	@] A A  A@]@;/build/spark-MzIYBy/spark-2012.0.deb/simplifier/portray.pro   }#2A@=C	@^ A A  A@^@=/build/spark-MzIYBy/spark-2012.0.deb/simplifier/deduction.pro  7AA@=C	@_ A A  A@_@:/build/spark-MzIYBy/spark-2012.0.deb/simplifier/newded.pro  7AA@=C	@` A A  A@`@=/build/spark-MzIYBy/spark-2012.0.deb/simplifier/inferenc2.pro  7AA@=C	@a A A  A@a@J/build/spark-MzIYBy/spark-2012.0.deb/simplifier/schedulesimplification.pro   }#2A@=C	@b A A  A@b@</build/spark-MzIYBy/spark-2012.0.deb/simplifier/records2.pro  7AA@=C	@c A A  A@c@8/build/spark-MzIYBy/spark-2012.0.deb/simplifier/simp.pro  7AA@=C	@d A A  A@d@:/build/spark-MzIYBy/spark-2012.0.deb/simplifier/simpvc.pro  7AA@=C	@e A A  A@e@9/build/spark-MzIYBy/spark-2012.0.deb/simplifier/quant.pro  7AA@=C	@f A A  A@f@</build/spark-MzIYBy/spark-2012.0.deb/simplifier/standard.pro  7AA@=C	@g A A  A@g@>/build/spark-MzIYBy/spark-2012.0.deb/simplifier/typecheck5.pro  7AA@=C	@h A A  A@h B  7AA@=C	@i A A  A@i@=/build/spark-MzIYBy/spark-2012.0.deb/simplifier/aritheval.pro  7AA@=C	@j A A  A@j@;/build/spark-MzIYBy/spark-2012.0.deb/simplifier/writevc.pro  7AA@=C	@k A A  A@k@;/build/spark-MzIYBy/spark-2012.0.deb/simplifier/makelog.pro   }#2A@=XD  t  t @&t  t nb_set_dictD  t  t t  t  A 	 D  t  t t  t  A 
O  AC
Ic  @6@T
@?@1 @instantitation_error@0@5@9 @@<C@ If   @@6@?@/@/
@8
$exported_ops @1exports
@5@8 C` @ @ weak@9 E. @<C@DIj  	except
@6@?@/
@/@8 F@1 F@5@8 F@E	@ @8 B@M@S@@
@1 @@1 C" C$@5@0@5@8 @@ @ 
@/@8$import_except @ @  F @9 F!@<CIs  @6@?@8 B@?@ strong@9 F!@<C
Iv  @6@1 @@2 C"import_specifier
@5@9 @@<XD  t  t @&t  t $destroy_findall_bag D  t  t @&t  t $qlf_assert_clauseD  t  t @&t  t prolog_current_choiceD  t  t @&t  t abolishD  t  t t  t  F& 	 D  t  t t  t  F& 
O  F%CIz   
	@=CI{  @6@ @/
@8$import_except_1 @ @ 
@9 F$@<XD  t  t @&t  t $prof_statisticsD  t  t t  t  @ 	 D  t  t t  t  @ 
O  @C@TLE  
@6@/@8 CG@/@8 EW@E@8 D@M@E@ @/
@8get_dict @M@'
@@@'
@F
@F@@@"@/@ @8 EW@ @/
@8 CG@E@ @8 @@M@'
@@@'
@<XD  t  t @&t  t $rc_open_archiveD  t  t t  t expand_file_search_path 
O  F6C@!Bf  @6@1$expand_file_search_path	 @5@1loop@.
@5@1 @@2 @@1
loop_error@5@2file_search
@5@9 C@<XD  t  t @&t  t  @D  t  t @&t  t $factorize_termD  t  t @&t  t prolog_nodebugD  t  t t  t  EP 	 D  t  t t  t  EP 
O  EOC@IJF  @6@/	@8 @@1 	@5@8$valid_directive @?@E@8$pattr_directive @M@S@F
@@@*@E@1 	@5@/
@1 E
@5@8 C@M@S@@warning@1goal_failed Dq@2 	@5@8 @@R@F
@<CJP   @=XD  t  t @&t  t $clause_term_positionD  t  t @&t  t 	peek_codeD  t  t t  t $check_load_non_module 	 D  t  t t  t  FM 
O  FMCHI  @6@0@8 A
@?@<C@6HK  @6@/
@0@8 AH @,	
@?@1 @@.@5@ENon-module file already loaded into module ~w; trying to load into ~w@3
@4	@5@8 @ @1 @@1 @e @ @@5@2 Dr@1  A+@5@5@9 @@<CHT   @=XD  t  t @&t  t  D  t  t @&t  t thread_joinD  t  t t  t  EK 	 D  t  t t  t  EK 
O  EJC@"J  @6@8$common_goal_type @?@E
@+	 @@M@S@F
@@@/
@8 @@1 
@5@9 E7 @<CJ  @6@E
	 @@8 C@M
@S@@	 @@1mixed_directive@5@9 @@<XD  t  t @&t  t  FLD  t  t @&t  t  C-D  t  t @&t  t thread_at_exitD  t  t @&t  t $thread_local_clause_countD  t  t @&t  t call_shared_object_functionD  t  t @&t  t redefine_system_predicateD  t  t @&t  t 	code_typeD  t  t @&t  t writelnD  t  t @&t  t $attvars_after_choicepointD  t  t t  t $restore_load_stream 	 D  t  t t  t  Fa 
O  FaCEX  @6@1 D @.@5@8 @@?@9 Fc @<C@0E[  
 C4

@6@E
@+ @-@M
@1 @ A@5@8 @@@@S@E@+ @-@M@1 D @-@5@9 @@@@S@<XD  t  t @&t  t  D}D  t  t t  t   @D  t  t @t  t   A#D  t  t t  t   
O  FeC@A[  
@6@/
@/@8$initialization_context @E@+	now@M@ @k@ @9$compile_init_goal @@@q@E
@(@+	
after_load@M
@E
@-
 @k@M@ @9 Fj@@@1 @@1
context_errornodirective@2 Fe Fm@5@0@5@9 @@@@F@E@+	 D@M @k@ @9 Fj@@@5@E@T	@M@1 @ C!@0@5@9 @@@@$@E@8 @@M@1 @@1domain_errorinitialization_type	@5@0@5@9 @@@
@1 @@1 C" 	@5@0@5@9 @@<XD  t  t @&t  t  DD  t  t @&t  t $free_variable_setD  t  t t  t $mt_start_load 	 D  t  t t  t  Fu 
O  FuCF  
queue
@6@ @/@8 Cx @D
@ @8 E @M
@Q@?@<CF  
already_loaded@6@1 A$@.@5 @.@8 @@ @8 E @?@<CF  @6@/@8 F{@/@8 C @1 Fz@5@9 @N @<XD  t  t @&t  t sub_atom_icasechkD  t  t @&t  t 
var_numberD  t  t t  t  D 	 D  t  t t  t  D 
O  DCE@  @6@1 E@@.
@5@8 @@?@-
default@1 E@
@5@9 @@<CED   @=XD  t  t @&t  t delete_import_moduleD  t  t @&t  t protocollingD  t  t t  t $exported_op 	 D  t  t t  t  F 
O  FCI  @6@0@1 @2 F@0@0@0@5@8$c_current_predicate @1 @2 F	
@5@@<XD  t  t t  t  D 	 D  t  t t  t  D 
O  D
CH  @6@T@?@9 C@<CH  @6@?@<CH  	
@6@?@8 D@9 D@<C
H  @6@1library@2  Ak@5@9 DI @<XD  t  t @&t  t mutex_createD  t  t @&t  t $make_system_source_files D  t  t @&t  t $record_clauseD  t  t @&t  t  DD  t  t t  t $head_module 	 D  t  t t  t  F 
O  FCJ  @6@T@?@R@<CJ   D
@6@9 F @<CJ    

@=XD  t  t @&t  t  ED  t  t t  t 
$canonical_pi 	 D  t  t t  t  F 
O  FCI  //

 

@6@ @b@g@c@o@x@<CI   
@=XD  t  t @&t  t thread_peek_messageD  t  t @&t  t put_attrD  t  t t  t -> @D  t  t @t  t F  D  t  t t  t  F 
D  t  t t  t  F @O  FC
@  @6@1 F	@5@@<XD  t  t @&t  t  BD  t  t @&t  t  DD  t  t t  t  @ @D  t  t @t  t @ @ @D  t  t t  t  @ 
D  t  t t  t  @ @O  FC@  @6@@<XD  t  t @&t  t with_output_toD  t  t @&t  t sortD  t  t @&t  t tty_sizeD  t  t t  t  C 	 D  t  t t  t  C 
O  CC
K  @6@1 @ C!@0@5@9 @@<XD  t  t t  t  C @D  t  t @t  t E<  D  t  t t  t  C 
O  E<C	A=  @6 @.@0@9 A3@<XD  t  t t  t  E 	 D  t  t t  t  E 
O  EC@sD  
@6@8 C& @ @/@8$read_clause_options @8 De@/@3@1variable_names@.@5@4@1
term_position@.@5@4@1subterm_positions@.@5@5@8read_clause $term_position@ @8 E $variable_names@ @8 F@E@*@+ B@M@?@E@"
@#@M@R@@@ @ @ @ @ 
@ @ @9$expanded_term
 @@@ @ @ @ @ 
@ @ @9 F@<XD  t  t @&t  t  D D  t  t @&t  t 
set_localeD  t  t t  t  E 	 D  t  t t  t  E 
O  ECG  @6@1modified@.@5@/@8 @@,@?@'	@<C
G  @6@8 Dc @?@9 Ce@<CG   
        @=XD  t  t t  t default_module 
O  FC@#A  @6@E
@8 @@M
@E
@T	@M@9$default_module @@@8 F@?@@ @@9$type_error @<XD  t  t @&t  t 
atomic_concatD  t  t t  t $load_msg_compat 	 D  t  t t  t  F 
O  FCD2   @.normal@6@?@<CD3   @-silent@6@?@<CD4   
@=XD  t  t @&t  t 
$xr_memberD  t  t @&t  t get_string_codeD  t  t @&t  t 	$qlf_infoD  t  t @&t  t succD  t  t @&t  t current_keyD  t  t @&t  t nameD  t  t @&t  t  ED  t  t @&t  t floatD  t  t t  t  @ 	 D  t  t t  t  @ 
O  @C@9G`  @6 @@8 D@E
@)@1 F@.
@5@8 @@M
@E@/@8$negate @M@ @/@8 F @@@&
@F @@ @9 @r@@@S@G
@F@<XD  t  t @&t  t 	$break_pcD  t  t @&t  t string_codesD  t  t @&t  t $prof_sibling_ofD  t  t @&t  t 	$local_opD  t  t t  t  EE 	 D  t  t t  t  EE 
O  EDC@,Jv  @6@/
@/@8 EW@b@g@c@t@8 AC @3
@.@5@8 D@ @/
@8$mk_normal_args @3
@4
@5@9 D@<XD  t  t @&t  t  @D  t  t t  t  D 	 D  t  t t  t  D 
O  DCK   argument @=CK    B @=CK   class @=CK   emulator @=CK   global @=CK   goal @=CK   	init_file @=CK   local @=CK   map @=CK    C @=CK   stand_alone @=CK   toplevel @=CK    D @=CK   trail @=XD  t  t t  t $read_clause_option 	 D  t  t t  t  F 
O  FCD   
syntax_errors@=CD    F@=CD   process_comment@=XD  t  t @&t  t numberD  t  t t  t  CM 	 D  t  t t  t  CM 
O  CLC@-II   @6 F@/@8 D @/@0@ @8 F@?@E
@ @0@0/boot/@8 F@M
@)	 @@@)	 F@<CIP   
 A A@=XD  t  t t  t $confirm 	 D  t  t t  t  F 
O  FC@UB%  @6 Dh@8 @ @0@8 A? @/	@8 Dj@E
yYjJ 
@8	$in_reply @M
@? Dh@1if_tty@4@1 @yes@5@5@9 @@@@'@EnN@8 F@M@? Dh@1 F@4@1 @no@5@5@8 @@R@@
help@1 Dhconfirm@5@8 @@R@<XD  t  t @&t  t  CD  t  t @&t  t  CD  t  t t  t  D 	 D  t  t t  t  D 
O  DCC   @R @T@6@?@9 @U@<CC   @R@6@?@D
@8 @U@M
@Q@<C@"C   @]
@6@?@D@/@8 @_@D
@ @8 @b@M
@Q@M@Q@@@F@<XD  t  t @&t  t  ED  t  t @&t  t  F4D  t  t @&t  t $garbage_collectD  t  t @&t  t 
string_lengthD  t  t @&t  t  @D  t  t t  t 
$check_export 	 D  t  t t  t  G 
O  GC@&IR  @6@/	@8$undefined_export @A@/
@8 B@0@/@8 D{ @@1undefined_export@5@8 @@R@@@S@G
@<XD  t  t t  t 
$call_at_halt 	 D  t  t t  t  G 
O  GC@-L  @6@/
 @.@8 C@?@E@T
@M@S@@@E@1cancel_halt@0@5@8
subsumes_term @M D+@8 @@R@@ @@9 @@<C
L  @6 FH@1 FIat_halt@5@9 @@<XD  t  t @&t  t  CCD  t  t t  t $search_path_file_cache D  t  t t  t  G ADD  t  t t  t  G ED  t  t t  t  G 	 D  t  t t  t  G 
D  t  t @&t  t copy_predicate_clausesD  t  t t  t  F0 	 D  t  t t  t  F0 
O  F/C
I  @6@T@?@1 @ F@0@5@9 @@<C@ I  as

@6@ @8$pi @ @8 @@?@ @/
@8 F @ 
@ @9
$import_as @<CI   C



@6@?@1 C
@5@9$remove_ops @<CI  @6@8 G@?@/@8 G@/@8$select @ @ @8 G@?@<CI  @6@1 @@1 C" F)@5@0@5@9 @@<XD  t  t @&t  t 
set_randomD  t  t @&t  t tty_putD  t  t @&t  t current_flagD  t  t @&t  t tmp_file_streamD  t  t @&t  t  CD  t  t t  t  F 	 D  t  t t  t  F 
O  FCA   
@=CA  @6@/
@8
import_module @9 F@<XD  t  t @&t  t $rc_save_archiveD  t  t @&t  t  CD  t  t t  t 
$add_encoding 	 D  t  t t  t  G, 
O  G,C@"E  @6@E@"	 E@@#@M@'
	@@@"
 E@	@#@<XD  t  t @&t  t current_localeD  t  t t  t  A 	 D  t  t t  t  A 
O  ACK  @6@1 @@1 Fq	@5@0@5@9 @@<XD  t  t @&t  t $current_breakD  t  t @&t  t atom_lengthD  t  t @&t  t 
$vm_assertD  t  t @&t  t string_charsD  t  t @&t  t  C*D  t  t @&t  t $qq_openD  t  t @&t  t  DD  t  t @&t  t $code_classD  t  t t  t  E 	 D  t  t t  t  E 
O  EC
J   C@6@? @cannot_redefine_comma@8 @@R@<C@'J  @6@8
$valid_clause @?@E
 C@8 C@M
@ @9 F @F@@@ @/@8 F @ development@9 F+ @<XD  t  t @&t  t atom_stringD  t  t @&t  t  @. D  t  t @&t  t \=D  t  t @&t  t  CFD  t  t @&t  t read_term_from_atomD  t  t @&t  t mutex_unlock_all D  t  t @&t  t  D& D  t  t t  t  Fh 	 D  t  t t  t  Fh 
O  FgC@,A  @6@E
@/
@/@8 C>@M
@"	 
@#@/@8$input_context @ @9 E@@	@)	 @k@(
 @k@G@<XD  t  t t  t  AE @D  t  t @t  t AE D  t  t t  t  AE 
O  GGC	@O  @6 C AE@9 C@<XD  t  t t  t  E ADD  t  t t  t  E AED  t  t t  t  E 
O  EC@5L   D G
   C 

 


@6@D	 E @.@8 D@M@Q@ @ 
@8 C>@ @ @9 @@<C@\ D D  Dversion
  Aversion_msg
@=CA	s@$/usr/lib/swi-prolog/boot/autoload.pl  ]wA GO  D
autoload_path
  Afile_search_path B
 Dreload_library_index@=C@	s@$/usr/lib/swi-prolog/boot/predopts.pl  ]wA GV Dpredicate_options


@6@7
	$predopts@ @ @9expand_predicate_options GZ@<C@j	s@!/usr/lib/swi-prolog/boot/dicts.pl  ]wA G_@6@7
$dicts@9expand_dict_function Ga@<C@l G_ G_ 

@6@7 Ga@ @/@8 Gc@?@"	 
@#@<C@	u An  'A Gf Dblock
@6@7
block_directive@9expand_block_declaration Gi@<C@'@ Gf Gf@6@7 Gi@1 @.
@.@5@8head Gi@ @8block_declaration Gi@D@8
block_wrapper Gi@M@Q@1 
@5@9
wrap_block Gi@<CA At At Darithmetic_function
@6@7 D1@9arith_decl_clauses D1@<C@*@ Am Am Dload_foreign_resource
 D Fe G 


 Fi@6@7 D5 @@ @8 D9 @@ @9 D9@<C@+@ Am Am D D



 D D	


@6@7 D5 Ak Al@8 D9@1sicstus_module_decls@5@ 
@9phrase
$dcg@<CA B B D B
@6@7
 B@9compile_records G@<C@@ B B Dsetting




@6@7
 B@D	 E @.@8 D@M@Q @@/@8 D: @4@1 
@5@/@/@8 D|  @ @8must_be
 @@ 
@/@8to_atom G@ @ @ @/@8eval_default G@ @ @8
check_type G@E@Q@ @ @/@/@0@/@8current_setting G@M@E@ @ @8=@= G@ @ @8 G@M@)	@F@@@%@1 D@.@5Already defined at: ~w@3@5@8 FR G@1 @@1 @eredefine G@2 @5@2 Dr@0@5@9 @@G@@@+@C@/@/@8 C? @M@"	  B G @#@P@G@G@<XD  t  t @&t  t >:<D  t  t @&t  t $eval_when_conditionD  t  t t  t  E1 	 D  t  t t  t  E1 
O  E0CI   @=C@I   G


 

@6@?@ @1 @.@5@8 G@/@ @8length @/@3@5@8 D@/@3@5@8 D@E@1 
@5 @@8 E @M@1 	@5 @@8 C
@@@S@E@,@/@/@8 C>@M@1 E@1 F@2 
@5@0@2 @5@/@1 @ @@5@8 C@@@1 F@2 C DE@2 
@5@8 @L@G@F@ @ @ @ 
@9 E/@<C@8I   C



 C
@6@?@1 C@5@8$import_ops @ @ @ @ 
@9 E/@<C@?I  


@6@1 	@2$import@1 
@5
@5@/@1 @ @@5@8 C@1$import_wic

@5@8 CT@ @ @ @ 
@9 E/@<XD  t  t t  t  D 	 D  t  t t  t  D 
O  DCH  @6@1 A' @.@5 @-@8 @@?@1 @@1 Fqmodule_file@5@0@5@9 @@<C@ H  @6@/@ @8 @@1 C@5@8 CT@8 CZ@ @8 CDend_non_module@9 CD@<XD  t  t @&t  t thread_exitD  t  t @&t  t 	$trap_gdb D  t  t @&t  t isD  t  t @&t  t  EpD  t  t @&t  t thread_setconcurrencyD  t  t t  t  G8 	 D  t  t t  t  G8 
O  G7C	J  @6 @ @-@8 D@?@<CJ  @6@D	@8$cross_module_clause @M	@Q@?@<C@"J  @6@1  A@2sandbox_allowed_clause@5@/	 @.@8 C@?@E
@T	@M
@S@@ @@8 @@R@<CJ  @6 @@1 @@1 @e Cjsandboxed_clause@5@0@5@8 @@R@<XD  t  t @&t  t flush_outputD  t  t t  t  G 
O  G
C	L  @6@1 G
@5@9 @@<XD  t  t @&t  t 
collation_keyD  t  t @&t  t protocolD  t  t @&t  t @>=D  t  t @&t  t msortD  t  t @&t  t  @D  t  t t  t  Em 	 D  t  t t  t  Em 
O  ElC@"C}  @6@8 B@?@D@/
@8 B@8 D @D@8 G @M@Q@M@Q@@@F
@<C@1C  @6@D
@'@/
@/@8 F2@/@3
@4@5@8 D@ @8 G@D@ @8 G@M@Q@M
@Q@@@G
@F@<XD  t  t t  t  Ec 	 D  t  t t  t  Ec 
O  EbC	C)  
@6@8 E^@?@<CC+  @6@/
@8$segments_to_list @? @9 Es @<CC.  @6@1 @@1 C"	file_path@5@0@5@9 @@<XD  t  t @&t  t compareD  t  t t  t  F 	 D  t  t t  t  F 
O  FC@ K  @6@E
@T	@M
@1 @ C!@0@5@9 @@@
@1 @@1 C"	@5@0@5@9 @@<XD  t  t t  t  C 	 D  t  t t  t  C 
O  CCL4  @6@T@?@R@<CL6  @6@0@8 EW@?@3	@4
@5@9 D@<CL9    E

@=XD  t  t @&t  t =<D  t  t @&t  t  BD  t  t @&t  t peek_stringD  t  t @&t  t $rc_openD  t  t @&t  t 	size_fileD  t  t @&t  t 
locale_createD  t  t t  t $expansion_member 	 D  t  t t  t  G 
O  GCD  	@6@T@?@<CD  @6@?@R@<C@+D  @6@8 B@?@E
@T	@M@9 B@@@E
@8 B@M
@ @9 E@@@'	@9 B@<CD   	@=XD  t  t @&t  t promptD  t  t @&t  t  C*D  t  t t  t  @~ 	 D  t  t t  t  @~ 
O  @}C@)Gu  @6 @@8 D@E@1	sandboxed@.
@5@8 @@/@8$enter_sandboxed @,	@M @@ @9 @r@@@S@G
@<XD  t  t @&t  t  CD  t  t @&t  t term_stringD  t  t @&t  t unify_with_occurs_checkD  t  t @&t  t  GFD  t  t @&t  t 
with_mutexD  t  t @&t  t  FD  t  t @&t  t 
nb_linkargD  t  t t  t  AD @D  t  t @t  t AD D  t  t t  t  AD 
O  GC	@N  @6 C AD@9 C@<XD  t  t @&t  t 	unifiableD  t  t t  t $set_debugger_write_options 	 D  t  t t  t  G 
O  GCB   C@6@?debugger_write_options@3@1quoted @.@5@4@1
attributes C@5@4@1spacing
next_argument@5@5@9 D @<C@*B
  print@6@? G@3@1 G @.@5@4@1portray @.@5@4@1	max_depth
@5@4@1 G G@5@4@1 G G@5@5@9 G@<C@*B  @6 G@/	@8 D@E@1 G@0@5@/
@8 G!@M@S@@@&
	 G@3@1 G@5
@5@9 G@<XD  t  t @&t  t read_pending_inputD  t  t t  t predicate_option_mode AED  t  t t  t  G 
D  t  t t  t 
prolog_cut_to 
O  GCA  @6@J@<XD  t  t @&t  t  DD  t  t @&t  t  CD  t  t t  t  G 	 D  t  t t  t  G 
O  GC@;I  @6@8 E@?@"
 C



@#@ @ @1 
@5@8 C @E@ @ @ 
@8 F @M@S@@ FH@1no_exported_op	
@5@9 @@<C@3I  @6@A@)@/@/@/
@8 G@"
 C 
@#@ @ @1 
@5@8 G@R@@@S@G@F
@<XD  t  t @&t  t  DyD  t  t @&t  t  FD  t  t t  t  E 	 D  t  t t  t  E 
O  ECK(  @6@1 E	@.
@5@1$store_aux_clauses	@5@1 E	
@5@9 @#@<XD  t  t @&t  t $get_dict_exD  t  t @&t  t prolog_skip_frameD  t  t t  t $load_id 	 D  t  t t  t  H 
O  HCG   @
@6@?@ @ @9 E@<CG  
@6@ @9 E@<XD  t  t @&t  t  @D  t  t t  t  G 	 D  t  t t  t  G 
O  GCI   
	
@6@8 @@8  @?@<CI   F
	
@6@8 @@9 H@<XD  t  t @&t  t  FD  t  t @&t  t 	same_termD  t  t @&t  t  EgD  t  t t  t  D @D  t  t @t  t D D  t  t t  t  D 	 D  t  t t  t  D 
O  DC@<L  @6@" 
	@#@1 @@.
	@5@8 EF@/@8$save_lex_state @0@@8 @n@/wic@8 EL@8 D@1 @@0
@5@8 EF@1 @j@5@8 EF@ @9 C6@<XD  t  t @&t  t atom_numberD  t  t @&t  t 	protocolaD  t  t @&t  t  FD  t  t t  t  @ @D  t  t @t  t @ @ @ @D  t  t t  t  @ 
D  t  t t  t  @ @O  H
C	@  @6@ @@<XD  t  t t  t  D@ @D  t  t @t  t D?  D  t  t t  t  D@ 
O  D?C
@  @6@1 D?	@5@@<XD  t  t t  t  FG 	 D  t  t t  t  FG 
O  FFC@u   G
@6 Dq AD@9 Dp@<C@w   GG
@6 Dq AE@9 Dp@<C@y  module_transparent
@6 Dq @@9 Dp@<C@{   AF
@6 Dq AF@9 Dp@<C@}   E
@6 Dq E@9 Dp@<C@   E
@6 Dq E@9 Dp@<C@   D
@6 Dq D~@9 Dp@<C@   C
@6 Dq C@9 Dp@<XD  t  t @&t  t  DE D  t  t @&t  t $inference_limit_falseD  t  t @&t  t  DbD  t  t @&t  t  E`D  t  t @&t  t  CgD  t  t t  t  @ 	 D  t  t t  t  @ 
O  @C
D6    @
full D+ D+@=C
D7    E
 H D+ D+@=C
D8    @
 F F D+@=C
D9    E
 F F F@=CD:    @ brief F D+@=C
D;    @
 H F F@=C
D<    E
 H F F@=C
D=    @
 F F F@=C
D>    E
 F F F@=XD  t  t @&t  t  CD  t  t t  t 	compiling  
O  H CD   @6@D C@8 C C@8 C @M@Q@<XD  t  t @&t  t stamp_date_timeD  t  t t  t  @ 	 D  t  t t  t  @ 
O  @C@)E  @6@0@/
@8 @@E @@ B C@M@"	  $qload_file@#@@
@"	   @@#@<XD  t  t t  t  C 	 D  t  t t  t  C 
O  CCA  @6 @@1initialization_error	
@5@9 @@<XD  t  t @&t  t  GD  t  t t  t $abs_file_error 	 D  t  t t  t  H 
O  HC@(B  @6@/@8 B@/@8 B@ @8 G@ @ @/
@/@8 @Q @?@1 @
@2 Dr@0@5@9 @@<CB  @6 @g@9$existence_error @<XD  t  t @&t  t  D  t  t @&t  t clauseD  t  t t  t  F 	 D  t  t t  t  F 
O  FCB4  @6@/
@8	char_code @0@0@0@8 F@?@<XD  t  t @&t  t $visibleD  t  t @&t  t $depth_limit_falseD  t  t t  t  @ @D  t  t @t  t @ @ @ @ @ @ @ @D  t  t t  t  @ 
D  t  t t  t  @ @O  H*C@  @6@ @ @ 
@ @ @@<XD  t  t @&t  t get_timeD  t  t t  t  F
 	 D  t  t t  t  F
 
O  FC@D  @6@1$expand_term	
@.@.@5@/@1$print_message_fail@5@8 C@E@-@M@ @ @/@/@8 G @@@&@&@E@z@U@" D
@#@U@M@E@?@" E
@#@/@ @8 @@1 @2 H1@5@8 FB@M@1 E@@.@5@8 @=@ @ @/@8 G- @ @ @ @ 
@ @ @ @ @9 B@@@(@E@" E@
@#@M@1 E@@5@8 @@R@@@'
@'@'	@F@G@F@@@'
@'@'@'	@'
@G@G@F@<XD  t  t @&t  t  @ND  t  t @&t  t wildcard_matchD  t  t t  t predicate_option_type AED  t  t t  t  H4 
D  t  t @&t  t 	put_attrsD  t  t t  t  G 
D  t  t t  t  G @O  GC@AK  @6@T	@?@/
@/@8
$skip_list @E
@+@M@'	
@@@(@E
@T@M
@,	@ @9$length3 @@@1 @@1 C" C$@5@2 Dr@1  G@5@0@5@9 @@<C@OL  @6@8 H@b@i@c @u@?@/
@/@8 H6@E
@+@M
@'	
@F@@@.@E@T@M@b@i@j@m @@y@ @ @9$length @@@1 @@1 C" C$@5@2 Dr@1  G@5@0@5@9 @@F@<CL  @6@8 H@?@1 @@1 Fqnot_less_than_zero	@5@2 Dr@1  G@5@0@5@9 @@<CL  @6@1 @@1 C" 	@5@2 Dr@1  G@5@0@5@9 @@<XD  t  t @&t  t  Dg D  t  t @&t  t get_attrD  t  t t  t $foreign_registered ADD  t  t t  t  HA 	 D  t  t t  t  HA 
O  HAC@ A0 A A@6@7
 A@E	@/
@8loading HC@M@S@@@(

<spontaneous>@1foreign_predicate
@2 	@5@9 Ci @<XD  t  t @&t  t  @?D  t  t @&t  t  F4D  t  t @&t  t  EsD  t  t t  t  E 	 D  t  t t  t  E 
O  ECK  
@6@ @9 E @<XD  t  t t  t $select_option 	 D  t  t t  t  HM 
O  HMCL[  @6@3@5@9select_dict @<XD  t  t t  t  @ @D  t  t @t  t @ D  t  t t  t  @ 
D  t  t t  t  @ @O  HRC@  @6@@<XD  t  t @&t  t 	$open_wicD  t  t t  t  E] 	 D  t  t t  t  E] 
O  E\C@CX   @.@6@?@/@1 F7@5@/@8 A@!@1cache	
@5@#@ @/@8 A0 @E@#@ @ @ 
@8 G @ 
@8 Ek@M@1 F?@1 HU
@5
@5@9$search_message @G@@@Z@/@ @8 B@ @/@8 Eh@E@;@ @8 Ek@ @ 
@8 En@E@ @ @ 
@8 HX@M@S@@
@1 HY
@5@8 D @M@1 HZ@1found
@5
@5@9 H\@@@1 HZ@1tried
@5@5@8 H\@R@<CCl   @-@6@/@8 F7 @ @/@8 Eh@ @8 Ek@ @ 
@9 En@<XD  t  t @&t  t 
copy_term_natD  t  t @&t  t  CD  t  t @&t  t  CD  t  t t  t  C 	 D  t  t t  t  C 
O  CC@AFQ  @6@D
@8 F @M
@Q@E
@1 C@.@5@8 @@M@S@@ C@/@8 D@E
@+auto@M@S@F@@@+large@/@8 G @b@g@c@t C@9 @b@<XD  t  t @&t  t  F-D  t  t @&t  t  @D  t  t @&t  t retractD  t  t @&t  t thread_send_messageD  t  t @&t  t  C D  t  t t  t  F 	 D  t  t t  t  F 
O  FC@*I  @6@0@1 @2 F@0@0@0@5@8 F@?@1 C@.@.@.
@5@1 @2 F
@5@9 A A@<CI   	@=XD  t  t t  t  A 	 D  t  t t  t  A 
O  ACB   txt@=CB   
executable@=CB    @T@=XD  t  t t  t  E 	 D  t  t t  t  E 
O  HLCK   
	@=CK  @6@ @ @9 HK@<XD  t  t @&t  t $rc_close_archiveD  t  t @&t  t ?=D  t  t @&t  t  CD  t  t @&t  t 
thread_detachD  t  t @&t  t  @dD  t  t @&t  t 
dwim_matchD  t  t @&t  t  D  t  t @&t  t $inference_limitD  t  t @&t  t  E=D  t  t @&t  t  EtD  t  t t  t  E 	 D  t  t t  t  E 
O  EC
J  @6@T@?@1 @ C!@0@5@9 @@<CJ  
@6@" C@#@?@<CJ  
@6@1 	@5@9 E5@<XD  t  t t  t  @ 	 D  t  t t  t  @ 
O  @CI    @=CI    A@=XD  t  t @&t  t $depth_limit_exceptD  t  t @&t  t $leashD  t  t @&t  t 	read_termD  t  t @&t  t close_shared_objectD  t  t t  t  D] 	 D  t  t t  t  D] 
O  D\CF   C4

@6@8	$qlf_open @  @@8 EL@ @9 @@<XD  t  t t  t  Cs 	 D  t  t t  t  Cs 
O  CrCC   A A@6@?@<CC  
@6 @0@0.@8 F@?@<CC  @6 H@9 C@<XD  t  t @&t  t  DD  t  t @&t  t setargD  t  t @&t  t >D  t  t @&t  t directory_filesD  t  t @&t  t abort D  t  t @&t  t 
$put_tokenD  t  t @&t  t wait_for_inputD  t  t @&t  t $freezeD  t  t t  t  C 	 D  t  t t  t  C 
O  DCH  @6 @ C@8 EL@?@8 C@0 @@8 EL@9 CD@<CH  @6@9 C@<XD  t  t @&t  t  FD  t  t t  t  E4 	 D  t  t t  t  E4 
O  E3C
I  

@6@?@<CI  
 C

@6@ @ @9 E2@<XD  t  t @&t  t $suspend_findall_bag D  t  t t  t  E CD  t  t t  t  E 	 D  t  t t  t  E 
O  ECK  @6@/
@/@8$clause_source @0@ @9 E @<XD  t  t @&t  t set_stream_positionD  t  t @&t  t nb_link_dictD  t  t @&t  t 
set_moduleD  t  t @&t  t  DD  t  t @&t  t  D  t  t t  t  G 	 D  t  t t  t  G 
O  GCJ  @6@/	@8 F@D
@8 @@M
@Q@<XD  t  t t  t  F 	 D  t  t t  t  F 
O  FCGk    @. @-@=CGl    @- @.@=XD  t  t @&t  t  @tD  t  t @&t  t at_end_of_streamD  t  t t  t halt  
D  t  t t  t  H  @O  H CL}    @6 @9 H @<XD  t  t t  t ignore @D  t  t @t  t H D  t  t t  t  H 
O  HCA  @6@@?@<CA   @=XD  t  t @&t  t  DD  t  t @&t  t $clause_from_sourceD  t  t @&t  t  H>D  t  t @&t  t instanceD  t  t @&t  t <D  t  t @&t  t 	read_linkD  t  t t  t  H; 	 D  t  t t  t  H; 
O  H:CL   
	@=CL  

@6@q
@ @ @9 H9@<XD  t  t @&t  t 	$qlf_loadD  t  t @&t  t recordzD  t  t t  t  @ 	 D  t  t t  t  @ 
O  @CG<  @6@1  A@5@8 D @?@/	@1 D	@5@9 A@<CG?   @=XD  t  t @&t  t  BD  t  t t  t $reverse 	 D  t  t t  t  H 
O  HCK  @6@9 H @<XD  t  t @&t  t $current_prolog_flagD  t  t t  t  H/ 	 D  t  t t  t  H/ 
O  H.CG  @6 @@8 @@R@<XD  t  t @&t  t acyclic_termD  t  t @&t  t  CD  t  t @&t  t $btree_find_nodeD  t  t t  t  E @D  t  t @t  t H D  t  t t  t  E 
O  HC	@R  @6 C E@9 C@<XD  t  t t  t  @ @D  t  t @t  t @  A#D  t  t t  t  @ 
O  HCE  @6@3@1 A$ A&@5@4@1 A' @.@5@4@1 @	@5@4@1 @ @.@5@5@9 A)@<XD  t  t @&t  t  DD  t  t t  t  @ 	 D  t  t t  t  @ 
O  @CG  @6@1  @2  @@5@8 H@?@9 @@<CG   FH@6@/
@/@8 C>@?
user_errorWARNING: ~w:~w: ~p~n@3
@4@4	@5@9 FQ@<CG   @@6@?@/
@/@8 C>@? HERROR: ~w:~w: ~p~n@3
@4@4	@5@9 FQ@<CG   @=XD  t  t t  t  G# 	 D  t  t t  t  G# 
O  G"C
K   

@=CK  


@6@ @ 
@9 G!@<XD  t  t @&t  t  GD  t  t @&t  t set_end_of_streamD  t  t @&t  t $call_residue_vars_end D  t  t @&t  t  	 D  t  t @&t  t  C@D  t  t t  t  @-  
D  t  t t  t  @-  @O  @- CA    @6@R@<XD  t  t @&t  t break D  t  t t  t $mt_end_load 	 D  t  t t  t  H 
O  HCF   Fw@6@?@<CF   F}@6@?@<CF  @6@1 Fz@0@.	@0@5@0@8 H$ @8 E  @@8 Hn @9 E @<XD  t  t t  t 
$compile_type 	 D  t  t t  t  H 
O  HC@#H   @6@/	@8 C@E

@+	 C@M
@)compiled@@@E
@+	 @@M@)*qcompiled*@@@)
boot compiled@<XD  t  t @&t  t $requireD  t  t @&t  t $start_consultD  t  t @&t  t  CD  t  t t  t  D ADD  t  t t  t  D ED  t  t t  t  D ED  t  t t  t  D 	 D  t  t @&t  t $def_modulesD  t  t @&t  t  DD  t  t @&t  t $collect_findall_bagD  t  t @&t  t rationalD  t  t @&t  t  C; D  t  t t  t  Cp 	 D  t  t t  t  Cp 
O  CoCK   C$@6@0@/
@8 H6@E@+
@M@S@@ C$@9 F@<CK  options@6@E
@8 C @M
@S@@ H@9 F@<CK   @6@E
@8 @@M
@S@@ @9 F@<C@!K  oneof


@6@8 Cn@E
@ @8 @@M
@S@@@ @9 A@<CK  boolean@6@E
@A@+	 @.@@@+	 @-@M
@S@@ H@9 F@<XD  t  t @&t  t  F_D  t  t t  t  C 	 D  t  t t  t  C 
O  CCH    @.@=CH   C]@6@/
@8 CG@8 G  C@9 CT@<CH   G@6 C@9 CT@<XD  t  t @&t  t  CD  t  t @&t  t  ED  t  t @&t  t 	copy_termD  t  t @&t  t  CD  t  t t  t  G @D  t  t @t  t GI D  t  t t  t  G 
O  GICL  @6@1 GJ@2  @k @5@9 H_@<XD  t  t t  t  C 	 D  t  t t  t  C 
O  CC
Fc  @6@8 @@0@9 @@<CFf  @6@8 ET@/
@8 CG@9 C~@<XD  t  t @&t  t number_codesD  t  t @&t  t 	is_streamD  t  t t  t  @ @D  t  t @t  t @ @ @ @ @D  t  t t  t  @ 
D  t  t t  t  @ @O  HC@  @6@ @ @@<XD  t  t @&t  t make_directoryD  t  t @&t  t cyclic_termD  t  t @&t  t tmp_fileD  t  t @&t  t character_countD  t  t @&t  t $prof_procedure_dataD  t  t t  t  @B 	 D  t  t t  t  @B 
O  DmCI4  
 @.@6ByY@8 @ Hyes~n@9 FQ@<CI7  
 @-@6BnN@8 @ Hno~n@9 FQ@<CI:  @6Ba@8 @ Habort~n@8 FQ@9 H  @<C	I>  @6 Fredefine_module_reply@8 @@R@<XD  t  t t  t  H 	 D  t  t t  t  H 
O  HCK   
	@=CK  @6@ @3	@5@9 H@<XD  t  t t  t  F9 	 D  t  t t  t  F9 
O  F8C@QBk  
@6@/@8 EW@?@ @/
@ B GS B@q
@E@b@g@c@t@M@1 F:@5@8 @@@@S@ 
@/@ @3@1 E
@5@5@8 F8 @/@8 CG@ @/@8 Ea@ @ @9
$make_path @<CBw  @6@9 Ea@<XD  t  t @&t  t  HD  t  t t  t  CV @D  t  t @t  t CU D  t  t t  t  CV 	 D  t  t t  t  CV 
O  CUCD  @6@E		 C@8 C@M	@S@@@@<XD  t  t @&t  t normalize_spaceD  t  t t  t  H# 	 D  t  t t  t  H# 
O  H"CK  @6@1 @@1 @X	@5@0@5@9 @@<XD  t  t @&t  t blobD  t  t @&t  t reset_profiler D  t  t t  t  C 	 D  t  t t  t  C 
O  ENCC  @6@8 H@E
@*	@M
@S@@@9 @F @<XD  t  t t  t  AF @D  t  t @t  t H D  t  t t  t  AF 
O  HC	@Q  @6 C AF@9 C@<XD  t  t t  t  A5 @D  t  t @t  t A4   @ D  t  t t  t  A5 
O  A4CA6  @6@8$sig_atomic @@@<XD  t  t @&t  t  @(D  t  t @&t  t $depth_limitD  t  t @&t  t $debuglevelD  t  t @&t  t current_outputD  t  t t  t  C\ 	 D  t  t t  t  C\ 
O  C[CH  @6 @@8 C@/	@8 CG@-	 @k@?@1 C	@5@9 FW@<CH   @=XD  t  t t  t  Fl 	 D  t  t t  t  Fl 
O  FkCAq  @6@8 @@- @k@?@1  @2 C	
@5@0@9 D@<C
Au  @6@1 C	
@5@9 @L@<XD  t  t @&t  t  C-D  t  t t  t $close_message 	 D  t  t t  t  H 
O  HCD   E
	
@6@?@9 @@<CD   @=XD  t  t @&t  t $fail D  t  t @&t  t $suspendD  t  t @&t  t  HD  t  t @&t  t  DD  t  t t  t 
ensure_loaded @D  t  t @t  t H D  t  t t  t  H 
O  HC
E  @6@3@1 A$ A&@5@5@9 A)@<XD  t  t @&t  t 	get_attrsD  t  t @&t  t unsetenvD  t  t t  t  G  	 D  t  t t  t  G  
O  GCI   
@=CI  @6@ @8 G@?@ @9 G@<CI  


@6@ @ 
@9 G@<XD  t  t @&t  t  GD  t  t t  t  G 	 D  t  t t  t  G 
O  GC@3G~  @6@E@+ @-@+	 @.@M@)
 @.@9$ensure_loaded_library_sandbox  @@@E@+ @.@+	 @-@M@1 @@1 @eleavesandbox @k@5@0@5@9 @@@@'
@<CG    @- @. @.@=XD  t  t t  t  E 	 D  t  t t  t  E 
O  ECD   D


@6@ @8 H@ @8 D @1 Fc
@5 @"@8 E;@9 H @<C@'D   D





@6@ 
@8 H@ @8 H@1 Fb
@5 @"@8 E;@9 H@<XD  t  t @&t  t  G*D  t  t @&t  t  ED  t  t @&t  t  G D  t  t t  t  @ 	 D  t  t t  t  @ 
O  @C@4G  @6@1 B@.
@5 @-@8 @@E
@/@8$autoload_nesting @M
@'	@@@)	 @F@E
@+
 @-@M@S@F@@@q	@ @9 @@<XD  t  t @&t  t  HD  t  t @&t  t  FD  t  t @&t  t  CD  t  t t  t <meta-call> D  t  t t  t  H ADD  t  t t  t  H 	 D  t  t @&t  t duplicate_termD  t  t t  t  E 	 D  t  t t  t  E 
O  EC@#J  @6@E
 C@8 C@M
@ @9 G9@F@@@ @/@8 G;@  G=@9 G>@<XD  t  t t  t  G 	 D  t  t t  t  G 
O  GCC1  @6@T@?@R@<CC3   

@6@ @/
@8 G@ @ 
@9 G@<CC6  

@6@9 E^@<XD  t  t @&t  t  ED  t  t @&t  t @<D  t  t @&t  t delete_directoryD  t  t t  t  E* 	 D  t  t t  t  E* 
O  E)C@!A  @6@/@0@8 C>@?@1 E@.@5@1
$autoload2	
@5@1 E@5@9 @#@<CA  @6@9 H @<XD  t  t @&t  t  D  t  t @&t  t 
line_countD  t  t t  t  E
 	 D  t  t t  t  E
 
O  ECH=    Eu@=CH>    Aj@=CH?    E@@=CH@    @@=CHA    @@=XD  t  t @&t  t recordaD  t  t t  t  E# 	 D  t  t t  t  E# 
O  E"C	A  


@6@?@<C
A    
@=XD  t  t t  t $delete 	 D  t  t t  t  I 
O  ICK  
@6@?@<CK  @6@?@ @ @9 I @<CK  


@6@ @ 
@9 I@<XD  t  t @&t  t divmodD  t  t @&t  t current_arithmetic_functionD  t  t @&t  t $dwim_predicateD  t  t @&t  t  @" D  t  t t  t  H @D  t  t @t  t H D  t  t t  t  H 
O  HC	@P  @6 C @@9 C@<XD  t  t @&t  t current_functorD  t  t @&t  t $inference_limit_trueD  t  t @&t  t  H8D  t  t t  t  C 	 D  t  t t  t  C 
O  CC@;J   @6@E
@1 @2 F@0@0@0@5defined@8 G@M
@S@@@1 H@2 @2  F@5@ @8 EF@1 F	
@5@0@  @k@9 E@<XD  t  t @&t  t  GD  t  t t  t  A+ @D  t  t @t  t A*  A#D  t  t t  t  A+ 
O  A*CE   

@6 C$@8 Cn@ @9 Dz@<XD  t  t @&t  t tellingD  t  t t  t  D 	 D  t  t t  t  D 
O  DCK~  @6@ @8 A@?@<CK  

@6@ 
@ @ @9 D@<XD  t  t t  t  F 	 D  t  t t  t  F 
O  FCD   @=C@!D  
@6@E
@8 F @M
@"	

@#@@@%	@ @ @9 F@<XD  t  t @&t  t  GD  t  t @&t  t  HzD  t  t t  t  EH 	 D  t  t t  t  EH 
O  EGCJ+  @6@/
@8 E @9 E? @<XD  t  t t  t  C 	 D  t  t t  t  C 
O  CC@*F  @6threads @.@8 D@?@1 G B@2 Fv	@.@5@1$mt_do_load	
@5@1 H@5@9 @#@<CF  @6@1 A$@.@5@  @.@8 @@ @ @8 F~@?@ @9$already_loaded @<C	F  @6@ @9 B@<XD  t  t @&t  t notraceD  t  t @&t  t  FD  t  t @&t  t tracing D  t  t t  t  G 	 D  t  t t  t  G 
O  GCK.  @6@8 B@?@1 B@.
@5@1 D
@0	@5@9forall
$apply@<CK2  @6@0@9 D@<XD  t  t t  t  A! @D  t  t @t  t DI D  t  t t  t  A! 
O  DICE  @6@3@1 A$ A&@5@4@1 A' @.@5@5@9 A)@<XD  t  t @&t  t  HQD  t  t t  t $consult_file_2 	 D  t  t t  t  I 
O  IC@TG  @6@/
@8 @@/@/@ @8 H @ @ @8 H @E@/@0@8 E@M@ @/@ @8 E@ @ @8 I!@@@S@G@8 H @/@ @8 H@ @8 C @ @ @ @8 E @ @8 @j @0@ 
@9 @@<XD  t  t t  t  H^ 	 D  t  t t  t  H^ 
O  H]CCs  @6verbose_file_search @.@8 D@? D+@9 @@<CCv   @=XD  t  t @&t  t prolog_to_os_filenameD  t  t t  t  H 	 D  t  t t  t  H 
O  HCK     E




 @6@?@<CK   
 @k@=XD  t  t t  t  @ 	 D  t  t t  t  @ 
O  @CG  @6@1 H@0@5@8 @I@1 H@5@9 H_@<XD  t  t @&t  t  GD  t  t @&t  t  EYD  t  t t  t $run_at_halt  CD  t  t t  t  I)  	 D  t  t t  t  I)  
O  I) C@ L  @6@1 H@1 GJ@.@.	@5 @.@.
@5@1 C@1 G	@5@2 H
@5@9 I@<XD  t  t @&t  t  H D  t  t t  t  H 	 D  t  t t  t  H 
O  HC@A  	@6@/@/@8
$find_library
 E*@/
@8 EW@3@1 H @.@5@5@/@8 @@E
verbose_autoload @.@8 D@M@( D+@@@( F@ @1 B@1 @2 	
@5@5@8 @@/ C@8 EL@E@*@M@1 @5@8 H @@@5@E@1 
@5 I@8 G@M@1 @2import@2 
@5@@@@1 @5@3@1 	
@5@5@8 A" @ @8 C6@ @8 @@0@1 
@5@9 F@<XD  t  t @&t  t  H'D  t  t t  t  C 
O  CCB  @6@8 H@D@8 H@M@Q@?@9 C@<CAKB  @6 H@8 Cn@E@1
extensions@.@5@/@8 HN @M C$@ @8 Cn@F
@@@+@E@1 @R@.
@5@8 @@M @ 
@8 Cn@ 
@/@8 A@&
@@
@&
@!@3 A@5@#@F
@ @/@8 Ct@E	@U
@M@&@@@1reserved_symboldict@0 @Sregular@5@ @/@8 D @E@!@1	solutions@.@5@ @/@8 I7@M@1 H  I>@4first@4 @@5@ @8 Cn@@@( I?@&@E@!@1file_errors@.@5@ @/@8 I7@M@1 H  IA@4 @@4 D&@5@ @8 Cn@@@( @@&@E@#@8 E^@1 Du@.@5@ @/@8 I7 H@ @8 Cn@M@/@8 Dw@/@ @8 B@@
@&@&@F@F@E@ @K@+ I?@M@ @E@!@ @ @  @.@8 Ed@M@!@S@G@@@.@E@"@+ D&@M@"@R@G@@@ @/@1 ES@3@1 @]exist@5@5 @-@5@/@8 A@ @ @9 H @@@ @ @  @-@9 Ed@G@<XD  t  t @&t  t  ED  t  t @&t  t delete_fileD  t  t t  t $qlf_part_mode 	 D  t  t t  t  IE 
O  IECJ   part@=CJ    @.@=XD  t  t @&t  t  GD  t  t @&t  t  DD  t  t t  t  FV 	 D  t  t t  t  FV 
O  FUCJ   C

@6@?@8 FT@ @9 FT@<CJ   D=

@6@?@8 FT@ @9 FT@<CJ   F

@6@?@8 FT@ @9 FT@<CJ  @6@9 A7 @<XD  t  t @&t  t  CD  t  t t  t  FD @D  t  t @t  t FC D  t  t t  t  FD 	 D  t  t t  t  FD 
O  FCC	J]  @6 @ @-@8 D@?@<C@"J_  @6@1  A@2sandbox_allowed_directive@5@/	 @.@8 C@?@E
@T	@M
@S@@ @@8 @@R@<CJf  @6 @@1 @@1 @eexecutesandboxed_directive@5@0@5@8 @@R@<XD  t  t @&t  t  EVD  t  t t  t  H- 	 D  t  t t  t  H- 
O  H,C	  A_ A_@6@ @9expand_term E@<XD  t  t @&t  t 
sub_stringD  t  t @&t  t  ID  t  t @&t  t date_time_stampD  t  t t  t  B 	 D  t  t t  t  B 
O  BCK   	@=CK  @6@ @ @9 B@<XD  t  t @&t  t 
$rc_handleD  t  t t  t  C 	 D  t  t t  t  C 
O  CC
A  @6 FH@1initialization_failure	@5@9 @@<XD  t  t t  t  C @D  t  t @t  t H D  t  t t  t  C 
O  HC	@U  @6 C C@9 C@<XD  t  t @&t  t char_conversionD  t  t @&t  t current_blobD  t  t @&t  t atom_to_termD  t  t @&t  t  H$D  t  t @&t  t $call_residue_vars_start D  t  t t  t  D 	 D  t  t t  t  D 
O  DC	H  @6 @k@9 E@<XD  t  t @&t  t  @hD  t  t t  t  H	 	 D  t  t t  t  H	 
O  HCG  @6@1scope_settings @-@5@8 @@?@) @k@<CG   @l

@6@8 @n @q@ @9 D@<XD  t  t @&t  t  CjD  t  t t  t  H ADD  t  t t  t  H ED  t  t t  t  H ED  t  t t  t  H 	 D  t  t t  t  I 	 D  t  t t  t  I 
O  IC@$F  @6@/@8 A
@?@E@ @8 @@M@&
@@@"

@#@ 
@ @9 @@<CF   A@6@?@<CF  @6@3@1 A$ @.@5@5@9 C@<XD  t  t @&t  t =:=D  t  t t  t  D @D  t  t @t  t D D  t  t t  t  D 
O  DC@7E   
	
@6@+
 A@?
$user_consult@/@1 A#@5@8 C @quser://@ @/
@8 C@1 	
@5@3@1 @ @:@5@5@9 A)@<C
E  @6@3@1 Du @.@5@5@9 A)@<XD  t  t @&t  t  I D  t  t @&t  t  I3D  t  t @&t  t 
numbervarsD  t  t @&t  t  @D  t  t t  t  H  	 D  t  t t  t  H  
O  HCG    @6@1 F H@5@1 @ H@5@8source_file_property @4@?@<CG    @6@1 F H@5@3@1 A$ A&@5@4@1 F @.@5@5@9 A)@<XD  t  t t  t  I 	 D  t  t t  t  I 
O  ICF   Fw

@6@?@1 C
@0@5@0 @.@8 C@ @ @9 I@<C
F   F}@6@?@ @ @9 I@<C
F  @6@ @ @8 B@9  @<XD  t  t @&t  t \==D  t  t t  t  C8 	 D  t  t t  t  C8 
O  C7CC  @6@1 D@0@5@8 @I@1 D@5@9 @L@<XD  t  t @&t  t del_attrD  t  t t  t not @D  t  t @t  t Ii D  t  t t  t  Ii 
O  IjC
@  @6@D	@@M	@Q@<XD  t  t @&t  t sleepD  t  t t  t  B 	 D  t  t t  t  B 
O  BCH  @6@1register @-@5@8 @@?@<C@7H  @6@/@/@8 C>@?@ @/
@8 F @8 FN @/@8 E @ @/@8 E@1  @2 AH	@5@0@ 
@1 @5@9 E@<C@FH!  @6@8 In@/@8 Io@ @/@8 E@E@$@1 AH	@0@5 @.@/
@8 H@D@ 
@1 @/@0@5@8clause_property @4@M@Q@M@ 
@8 H@@@S@F
@1 AH	@5@9 @L@<XD  t  t t  t  C 	 D  t  t t  t  C 
O  EMCC  @6@8 C@E
@*	@M
@S@@@9 C6@<XD  t  t @&t  t  EsD  t  t @&t  t  ED  t  t @&t  t  DD  t  t @&t  t  CD  t  t @&t  t 
$close_wic D  t  t @&t  t attvarD  t  t @&t  t keysortD  t  t @&t  t nonvarD  t  t t  t  H 	 D  t  t t  t  H 
O  HCBz  @6@0 @8 C@?@9 C@<CB}  @6@3@4 @4	@5@9 Eq@<XD  t  t @&t  t @>D  t  t t  t  C 	 D  t  t t  t  C 
O  CCFA  @6@E@8 F@M@/
@8 Ce@/@8 Ce@b@g@j@u@@@S@G
@<XD  t  t @&t  t 
nth_clauseD  t  t @&t  t 
number_stringD  t  t @&t  t open_null_streamD  t  t t  t  A: 	 D  t  t t  t  A: 
O  A9CJ   @=CJ    D@=CJ    D@=CJ   A*

	@6@1 Hh@.
@5@8 @@9 IF @<C	J   H@6 H
@9 C@<C	J   DI@6 H
@9 C@<C	J   A"@6 H
@9 C@<XD  t  t t  t  G 	 D  t  t t  t  G 
O  GCI  
 G	
@6@ @8 G@?@<CI  

@6@?@ 
@ @9 G@<CI  @6@1 @@1 @X C.@5@0@5@9 @@<XD  t  t @&t  t \=@=D  t  t t  t  Ej 	 D  t  t t  t  Ej 
O  EiCC  @6@/@8 C@ @/@8 @@ @9 B@<XD  t  t @&t  t  HnD  t  t @&t  t  H~D  t  t t  t  F 	 D  t  t t  t  F 
O  FCJ   

@=CJ  
 C

@6@ @ @9 F@<XD  t  t @&t  t  DnD  t  t t  t  C 	 D  t  t t  t  C 
O  CC@X   

@6@ @ @9 Dp@<XD  t  t @&t  t 
byte_countD  t  t @&t  t  D  t  t t  t  @ 	 D  t  t t  t  @ 
O  @C
D  @6@/	@8 GD@9 D@<XD  t  t t  t  @ 	 D  t  t t  t  @ 
O  @CG  @6@8 @@?@ @ @9 I @<C@ G  @6@/
@8 @@1 Dd	@5@8 CT@ @ @8 I~ C@8 CT@0@ 
@9 @@<XD  t  t t  t  @ 	 D  t  t t  t  @ 
O  @C@#D)  @6 @8 @@? @@/@8 D@ @/
@8 F@C@ 
@ @8 H @M@S@P@<CD0    F F@=XD  t  t @&t  t  ED  t  t t  t $no-null-bytes 	 D  t  t t  t  I 
O  ICBZ  @6@0@0@0 @8 F@? FH@1null_byte_in_path@5@8 @@R@<CB^   @=XD  t  t @&t  t context_moduleD  t  t @&t  t locale_propertyD  t  t t  t $clear_source_admin CD  t  t t  t  I 	 D  t  t t  t  I 
O  ICA  @6@1 C@0@0@2 @0@5@8 @I@1 AH@0@0@5@9 @I@<XXQM A-C AS XPwrite_conditions_list_items CE A	u F        @6@?@<C@'E A Iproved F
	
@6@8 C_  @8indent5  B
sidecondition@8prefix BImmediate condition @8 G B@8 I evaluated successfully@8 C @?@9 I B@<C@ E% A I I
	
@6@8 I@8 I I@8 IBy simple reasoning, proved: @8 I@8 I@?@9 I@<C@+E. A I I
	

@6@8 I@8 I I@8 IFrom H@8 IH@8write_hyp_numbers_list B
, proved: @8 I@8 I@?@ @9 I@<XPsimp_rel CEn A	u F         E   @.@6@?@<CEq A I E
  @-@6@8	s_integer B@D @b@j@x@M@Q@?@<CEv A I E @k
 @6@1 E
 @5@8 I B@?@<CEz A I E
  E

@6@ @ @8esplint B@?@<CE A I<>   @-@6@?@<CE A I I
  @.@6@8 I@D @b@j@x@M@Q@?@<CE A I I I
 @6@1 I
 @5@8 I@?@<CE A I I
  I

@6@ @ @8 I@?@<CE A I H I
  @-@6@8 H@b@j@c @u@?@<CE A I I   @-@6@?@<CE A I I
  @.@6@8 H @8 GA @?@<CE A I I
  I

@6@ @ @8splint B@?@<CE A I E   @.@6@?@<C@(E A I I
 @6@8intexp B@/@8iss B@A@b@g@c @u@)	 @.@@	@b@g@c @r@)	 @-@?@<CE A I I
  I

@6@ @ @8 I@?@<XPcv CAk A I@6@T@?@R@<CAp A I*

@6@/@8 I B@ @/
@8 I@ @ 
@8multiply_out B@?@<CAu A I I]

 I]


@6@ @8 I@ @ 
@8 I@?@<C@#Ay A I @

 I]


@6@ @8 I@1 I@2 I@5@ 
@8 I@?@<CA} A Idiv

@6@/@8standard B@ @/
@8 I@1 I
@5@8simp_num B@?@<CA A I 

@6@/@8 I@ @/
@8 I@1 
@5@8 I@?@<CA A Imod

@6@/@8 I@ @/
@8 I@1 I
@5@8 I@?@<CA A Irem

@6@/@8 I@ @/
@8 I@1 I
@5@8 I@?@<C@"A A Ielement

@6@1 I
@5@/@8	checktype B@?@1 I
@5@ @8do_norm_typed_expr B@?@<C	A A I
@6@8s_atomic B@?@<CA A I
 I
@6@8 H@b@h@c @r@b@h@l I@x@?@<CA A I I
@6@1 I
@2 I@5@8 I@?@<CA A I@6@/
@0@8
defined_funct B@8
simp_funct B@?@<CA A I 
@=XPis_non_empty_range C@]J A	u F        @6@/
@8 I@A@+@)
 @8signed_integer B@8 I@1<=	@5 @.@8simplify B@1 H@1 @	@5@5 @.@8 I@G@F
@@@(@/@8enumeration
 B@ @/@8is_in_with_pos B@ @/
@8 I@b@g
@g@m @@c@r@1 I	@5 @.@8enumerated_simplify B@?@<XPfind_cancellation C@PC A I@6@3@.@4@.
@5@8	gen_is_in B@3@4@.@5@8is_in B@ 
@/@/@8int_and_sign B@ @/@/@8 J@ @ @/@8lcm B@1 I@2 I@5@8 I@ @1 I@1 I@5@2 I@5@9 I@<XPfetch_and_decrement_stack_depth CM A I@6@1current_stack_depth@5@8 Hm @q	?@?@1 J	@5@8 H_@?@<XPsave_nested_used_facts CEW A	u F        @6@/	@8inference_depth_limit B@1buffered_used_fact	@0@5@8 @I@?@9buffer_the_used_facts B@<XP@#find_smallest_integer_literal_above C$m A	u F
        @6@/
@8@"find_largest_integer_literal_below B@?@1 I]
@5@9 I@<XD  t  t t  At  J ADPdo_rule_substitutions1  CG- A I @6@D@8rule_substitution_is_on  B@M@Q@?@<C@$G1 A I@6@8 J#@8find_max_conc_no  B@/@8max_conc_no B@1hn@0@5@8 @I@1 J,@5@8 H_@8 De@/	@8
fetch_next_hn B@8replace_conc_rule B@'	@?@<XPwrite_offending_predicate CC? A	u F
        @6Offending predicate is: @8 I@8 I@9 I@<XP@'try_join_negations_to_get_contradiction  C@-FD A I@6@8standardisation_is_on  B@/@3s@4@.	@5@/
@8 B
 B
@1
reduction_hyp@0@0@5@8 @I@/@8
form_negation B@  H@/@8norm_typed_expr B@ @8try_eliminating B@R@<XPperform_write_path_functions CB A J6@6@8write_vc B@8 G  @8write_log_facts  B@?@<XPequivalence_hyp CK A I@6@1 E	@5@ @9 J>@<CK A I@6@1 E	@5@ @9 J>@<CK A I@6@1<->	@5@ @9 J>@<CK A I@6@1 JX	@5@ @9 J>@<XPfind_array_component C@)AF A	u F        :=



@6@A
@ @8satisfies_index_constraint B@?@ @8 I@@@ @8@!does_not_satisfy_index_constraint B@?@ 
@8 JZ B@?@<CAQ A J\
@6@ @1 J]@0@0@5@8 I@ @8 I@0@8 I@?@<XPsimplification_is_on  C@B A	u F        @6on@8simplification
 A@?@/@8current_vc_number B@?@D	off@8 Jl Jm@M	@Q@?@<XP@ substitute_and_eliminate_integer CN1 A Isubst_and_elim@6@8substitute_and_eliminate_x Bsubst_elim_hyp@3	@4
@4@5@9assert_log_fact B@<CN5 A I	subst_fld@6@8substitute_and_eliminate_y B J~@3	@4
@4@5@9 J{@<XPremove_update_duplicates C@#A- A J\update


 J

@6@ @/@8remove_updates B@?@ @ 
@8 J B@?@<CA3 A J\
@6@?@<XPadvance_used_facts C@<@f A J E
	
@6@D@'	
@M@Q@D@1 E	
@5@8used B@M@Q@D
@1 E
	@5@8 J@M
@Q@1 J@2 E	
@5@8 @L@?@<C@$@l A J I
	
@6@D@1 I	
@5@8 J@M@Q@1 J@2 I	
@5@8 @L@?@<C@$@p A J I
	
@6@D@1 I	
@5@8 J@M@Q@1 J@2 I	
@5@8 @L@?@<XP@)maybe_echo_pf_trace_successor_statement_x CBV A J6successor_statement
  Successor statement: 
 H@6@ @8@ maybe_echo_pf_trace_pfpositionto B@?@<XPeliminate_N_from_HL CF{ A I

@6@?@ @9 J B@<CF A I


@6@?@ @ 
@9 J@<CF A I
@6@?@<XPis_min_max_function_name CD{ A J
min@6@0__min@9 C@<CD~ A J
max@6@0__max@8 C@?@<XPwrite_conditions_list CE A I@6@8 I@8 I@/This rule has an empty list of side-conditions.@8 I@?@<CE	 A I
	@6@8 I@8 I@HThis rule could be applied because its side-condition holds, as follows:@8 I@3	@5@8 I@?@<CE A I@6@8 I@8 I@HThis rule could be applied because its side-conditions hold, as follows:@8 I@8 I@?@<XPis_min_max_function CDs A J@6@8 ET@/@8 EW@8 CG@ @8 CG@ @8 J B@?@<XPfind_multipliers CCb A I@6@ @9find_common_multipliers B@<C@8Ce A I@6@/
@/@8 J@A@b@g
@c @t@'

@'@@@b@g
@c @r@1 I
@5@8 I@ @1 I@5@9 I@<C@8Cq A I@6@/
@/@8 J@A@b@g@c @t@'

@'@@@b@g@c @r@1 I
@5@8 I@ @1 I@5@9 I@<C@GC} A I@6@/
@/@8 J@A@b@g
@c @t@b@g@c @t@'

@'@@@b@g
@c @r@b@g@c @r@1 I
@5@8 I@ @1 I@5@9 I@<XP I CF A I  @6     @8 I@?@<XPis_an_empty_range C@<J A I@6@/
@8 I@A@)
 @8 I@8 I@1 I	@5 @.@8 I@F@@@/@8 I@ @8 J@ @8 J@1 I	@5 @.@8 I@?@<XP
move_logfacts CM A I@6@1log_fact@.	@.
@5@8 J@1moved_log_fact	
@5@8 @L@R@<CM A I@6@?@<XPdo_infer C@c A J E

@6@?@<C@e A J I

@6@?@R@<C@*@g A J E

@6@1 E
@5@/@8 J B@1 E
@5@/@8 J@?@ @ @8
merge_sort B@?@<C@n A J I

@6@1 I
@5@8 J@?@<C@p A J I



@6@1 I
@5@8 J@?@<C	@r A J I@6@?@<C
@t A J I@6@?@<C@v A J Iset J@6@?@<C@x A J I J J@6@?@<C@z A J @.@6@?@<C	@| A J Ij @-@6@?@<C@~ A J

@6@0@8 J>@?@<C@ A Jand

@6@/@8 J@ @/
@8 J@?@ @ 
@8 J@?@<C@ A Jor

@6@A@8 J@@@ @8 J@?@<C@+@ A J F

@6@A@ @8 J@@@A
@1 Ij
@5@8 J@@@8new_strategies_are_allowed  B@1 F
@5@8try_new_logic_strategies B@?@<C@(@ A J JX

@6@1 F
@5@/@8 J@1 F
@5@/
@8 J@?@ @ 
@8 J@?@<C@ A J JX

@6@8 J@1 JX
@5@9 J@<C@ A J Ij Ij
@6@8 J@?@<C@ A J Ij
@6@/@8neg B@ @1 Ij
@5@8 I@ @8 J@?@<C@ A J@6@/
@/@/@8
is_inequality B@ @/
@8find_mutual_types B@ @ @ 
@8try_to_infer B@?@<C@'@ A Jin
 J@6@A@1 E
@5@8 J@@@1 J
@2 J@5@8 J@?@<C@&@ A J J
\/

@6@A@1 J
@5@8 J@@
@1 J
@5@8 J@?@<C@,@ A J J
/\

@6@1 J
@5@/
@8 J@1 J
@5@/@8 J@?@ 
@ @8 J@?@<C@,@ A J J
\

@6@1 J
@5@/
@8 J@1not_in
@5@/@8 J@?@ 
@ @8 J@?@<C@ A J J
 J@6@?@<C@-@ A J J
 J@6@1 I
@5@/
@8 J@1 J
@2 J@5@/@8 J@?@ 
@ @8 J@?@<C@,@ A J J
 J

@6@1 J
@5@/
@8 J@1 J
@5@/@8 J@?@ 
@ @8 J@?@<C@&@ A J J
 J

@6@A@1 J
@5@8 J@@
@1 J
@5@8 J@?@<C@&@ A J J
 J

@6@A@1 J
@5@8 J@@
@1 J
@5@8 J@?@<C@ A J	subset_of

@6@1 E
@5@8 J@?@<C@ A J J J@6@?@<C@ A J J J

@6@1 J
@5@8 J@?@<C@4@ A J J J

 J

@6@A@1 J@5@8 J@@@1 J@1 J
@5@2 J
@5@8 J@?@<C@ A J J J

 J

@6@1 J@5@8 J@?@<C@ A J J J

 J
@6@1 J
@5@8 J@?@<C@ A J J J

 J
@6@1 J
@5@8 J@?@<C@ A J J J

 J

@6@1 J@5@8 J@?@<C@ A J J J

 J

@6@1 J@5@8 J@?@<CA  A J J J

 J
@6@1 J
@5@8 J@?@<CA A J J J

 J
@6@1 J
@5@8 J@?@<CA A J J J

 J

@6@1 J@5@8 J@?@<CA A J J J

 J
@6@?@<CA A J J J

 J
@6@?@<C@&A
 A J J
 J

@6@A@1 J
@5@8 J@@
@1 J
@5@8 J@?@<C@,A A J J
 J

@6@1 J
@5@/
@8 J@1 J
@5@/@8 J@?@ 
@ @8 J@?@<C@'A A J J J


@6@A@1 J
@5@8 J@@
@1 J@5@8 J@?@<CA A J J J
 J
@6@ @8is_subset_of B@?@<CA" A Jstrict_subset_of J
@6@1 J@0
@5@8set_infrule B@?@<C@DA$ A J J J


@6@A@1 J
@5@8 J@G
@@@$@1 J
@5@/
@8 J@1 I@1 J@5@2 J@5@/@8	set_infer B@?@ 
@ @8 J@?@<C@'A. A J J J


@6@A@1 J
@5@8 J@@
@1 J@5@8 J@?@<C@&A5 A J J
 J

@6@A@1 J
@5@8 J@@
@1 J
@5@8 J@?@<CA< A J J J
 J
@6@ @8is_strict_subset_of B@?@<CA@ A J E I?

@6@1 E
@5@8 J@?@<CAB A J E J D

@6@1 E
@5@8 J@?@<C@"AD A J E B

@6@3
@5@/
@8 B
 Ag@1 E
@5@8 J@?@<C@%AF A J E J D


@6@3
@5@/
@8 J@1 E
@5@8 J@?@<C@#AR A J@6@/
@/@8get_forall_hyp J@@D
@8 A{ J@M
@Q@/@8do_infer_side_conditions B@?@3@5@ @9 J@<C@IAY A J	 I

@6@1 I
@5@/@/
@8 J@D@1 I
@5@ @8 J@M@Q@D@1 I
@5@ @8 J@M@Q@ @/@8 J@?@3
@5@ @9 J@<C@IAa A J	 I

@6@1 I
@5@/@/
@8 J@D@1 I
@5@ @8 J@M@Q@D@1 I
@5@ @8 J@M@Q@ @/@8 J@?@3
@5@ @9 J@<C@qAm A J	 I

@6@ @/@8int_or_enum_lit B@A@1 I
@.
@5@/@/@8 J@@
@1 I@.

@5@/@/@8 J@D@1 I

@5@ @8 J@M@Q@D@1 I

@5@ @8 J@M@Q@ 
@ @8 J@1 I
@5 @.@8 I@ @/@8 J@?@3@5@ @9 J@<C@pA} A J	 I

@6@/@8 J@A@1 I@.
@5@/@/@8 J@@
@1 I@.
@5@/@/@8 J@D@1 I
@5@ @8 J@M@Q@D@1 I
@5@ @8 J@M@Q@ 
@ @8 J@1 I

@5 @.@8 I@ @/@8 J@?@3@5@ @9 J@<C@pA A J	 I

@6@/@8 J@A@1 I@.
@5@/@/@8 J@@
@1 I@.
@5@/@/@8 J@D@1 I
@5@ @8 J@M@Q@D@1 I
@5@ @8 J@M@Q@ 
@ @8 J@1 I

@5 @.@8 I@ @/@8 J@?@3@5@ @9 J@<C@qA A J	 I

@6@ @/@8 J@A@1 I@.

@5@/@/@8 J@@
@1 I
@.
@5@/@/@8 J@D@1 I

@5@ @8 J@M@Q@D@1 I

@5@ @8 J@M@Q@ 
@ @8 J@1 I
@5 @.@8 I@ @/@8 J@?@3@5@ @9 J@<C@A A J
 I

@6@A@"
 I


@#@@
@"
 I


@#@ 
@8int B@1 I
 @5 @.@8 I@ @8 J@A@1 I@.@5@/@/@8 J@@
@1 I@.@5@/@/@8 J@D@1 I@5@ @8 J@M@Q@D@1 I@5@ @8 J@M@Q@ @8 J@1 I@1 I
@5@5 @.@8 I@ @/@8 J@?@3@5@ @9 J@<C@A A J
 I

@6@A@" I


@#@@
@" I


@#@ 
@8 J@1 I
 @5 @.@8 I@8 J@A@1 I@.@5@/@/@8 J@@
@1 I@.@5@/@/@8 J@D@1 I@5@ @8 J@M@Q@D@1 I@5@ @8 J@M@Q@ @8 J@1 I@1 I
@5
@5 @.@8 I@ @/@8 J@?@3@5@ @9 J@<C@A A J
 I

@6@A@" I


@#@@
@" I


@#@ 
@8 J@1 I
 @5 @.@8 I@8 J@A@1 I@.@5@/@/@8 J@@
@1 I@.@5@/@/@8 J@D@1 I@5@ @8 J@M@Q@D@1 I@5@ @8 J@M@Q@ @8 J@1 I
@2 I
@5 @.@8 I@ @/@8 J@?@3@5@ @9 J@<C@A A J
 I

@6@A@"
 I


@#@@
@"
 I


@#@ 
@8 J@1 I
 @5 @.@8 I@ @8 J@A@1 I@.@5@/@/@8 J@@
@1 I@.@5@/@/@8 J@D@1 I@5@ @8 J@M@Q@D@1 I@5@ @8 J@M@Q@ @8 J@1 I@2 I
@5 @.@8 I@ @/@8 J@?@3@5@ @9 J@<C@OB A J		 I

@6@ @8 I@1 I@1 I]
@.@5@.
@5@0@/@8 J>@ @8 I@1 I
@.@5@0@/@8 J>@ @8 I@1 I@1 I]@5@5 @.@8 I@3@5@3@5@9 J@<C@OB- A J		 I

@6@ @8 I@1 I@1 @
@.@5@.
@5@0@/@8 J>@ @8 I@1 I
@.@5@0@/@8 J>@ @8 I@1 I@1 @@5@5 @.@8 I@3@5@3@5@9 J@<CB@ A J I

@6@  J@0@8 J B@?@<CBD A J I

@6@  J@0@8 K@?@<CBH A J I

@6 J@ @0@8 K@?@<CBL A J I

@6 J@0@ @8 K@?@<CBX A J I

@6@  J@0@8 K@?@<CB\ A J I

@6@  J@0@8 K@?@<CB` A J I

@6 J@ @0@8 K@?@<CBd A J I

@6 J@0@ @8 K@?@<C@1Bm A J I

@6@ @0@/@/
@8 K@1 I
@5@/@8 J@1 I

@5@/@8 J@?@ @ @8 J@?@<CBu A J I

@6@0@0@0@8 K@1 I
@5@8 J@?@<C@1Bz A J I

@6@ @0@/@/
@8 K@1 I
@5@/@8 J@1 I

@5@/@8 J@?@ @ @8 J@?@<CB A J I

@6@0@0@0@8 K@1 I
@5@8 J@?@<C@cB A J
 E

@6@1 I
@5@/@/
@8 J@D@1 I
@5@ @8 J@M@Q@D@1 I
@5@ @8 J@M@Q@ @/@8 J@ @/@8 J E@ @ @/@8 J@3
@5@ @/@8 @ J@?@ @ @9 J@<C@cB A J
 E

@6@1 I
@5@/@/
@8 J@D@1 I
@5@ @8 J@M@Q@D@1 I
@5@ @8 J@M@Q@ @/@8 J@ @/@8 J E@ @ @/@8 J@3
@5@ @/@8 K@?@ @ @9 J@<C@cB A J
 E

@6@1 I
@5@/@/
@8 J@D@1 I
@5@ @8 J@M@Q@D@1 I
@5@ @8 J@M@Q@ @/@8 J@ @/@8 J E@ @ @/@8 J@3
@5@ @/@8 K@?@ @ @9 J@<C@cB A J
 E

@6@1 I
@5@/@/
@8 J@D@1 I
@5@ @8 J@M@Q@D@1 I
@5@ @8 J@M@Q@ @/@8 J@ @/@8 J E@ @ @/@8 J@3
@5@ @/@8 K@?@ @ @9 J@<C@)B A J I I


@6@ @1 I@0@0@5@8 I@1 I@2 I
@4@5@9 J@<C@B A J

 I
 I

@6@1 I@0@0@5@8 I@  E@ @/
@/@/@8element_update_infer B@A@)
 Hb@'	@G@G@F@@@N@)
base@1for_all@1 @.@.@5@2 J@1 I@.@2 I@4@5@2 I@1 I@4@5@0@5@/@8fact B@ @ @8 I@1 I
@5@/@8
infer_subgoal B@1 I
@5@8testused B@?@ @ @9 J@<C@(B A J I
 I

@6@1 I@0@0@5@8 I@1 I@1 I@4@5
@5@9 J@<C@B A J

 I I


@6@ @1 I@0@0@5@8 I I@ @ @/
@/@/@8 K@A@)
 Hb@'	@G@G@F@@@N@)
 K@1 K@1 @.@.@5@2 J@1 I@0@2 I@4@5@2 I@1 I@4@5@.@5@/@8 K
@ @ @8 I@1 I@5@/@8 K
@1 I@5@8 K@?@ @ @9 J@<C@.B A J I

@6@ @1 I@0@0@5@8 I@0 @^@0@3@1 I@0@4@0@5@5@0@8record_function I@1 I
@5@9 J@<C@B A J I

@6@1 I@0@0@5@8 I@0@  @^@0@3@1 I@.@4@.
@5@5@0@8 K@1 K@1 @.@.@5@2 F@1 J@1 I@.@5@2 I@.@5@2 J@1 I@.@.@5@2 I@0@5@/@8 K
@ @/@8 EW@ @3@4@1 I@4@5@5@8 D@ 
@ @8 I@1 I
@5@/@8 K
@1 I
@5@/@8 K
@1 I
@5@/@8 K
@1 I
@5@8 K@?@ @ @/@8 J@ @ @/@8 J@ @ @9 J@<C@.C A J I

@6@1 I@0@0@5@8 I@0@  @^@0@3@1 I@0@4@0@5@5@0@8 K@1 I
@5@9 J@<C@C	 A J I

@6@ @1 I@0@0@5@8 I@0 @^@0@3@1 I@.@4@.
@5@5@0@8 K@1 K@1 @.@.@5@2 F@1 J@1 I@.@5@2 I@.@5@2 J@1 I@0@.@5@2 I@.@5@/@8 K
@/@8 EW@ @3@4@1 I@4@5@5@8 D@ 
@ @8 I@1 I
@5@/@8 K
@1 I
@5@/@8 K
@1 I@5@/@8 K
@1 I@5@8 K@?@ @ @/@8 J@ @ @/@8 J@ @ @9 J@<C@(C A J I
 I

@6@1 I@0@0@5@8 I@1 I@1 I@4@5
@5@9 J@<C@C A J I I


@6@ @1 I@0@0@5@8 I I@ @ @/
@/@/@8 K@A@)
 Hb@'	@G@G@G@@@U@)
 K@1 K@1 @.@.@5@2 J@1 I@.@2 I@4@5@2 I@1 I@4@5@.@5@/@8 K
@ @ @8 I@A
@1 I@5@/@8 K
@@@1 I@5@/@8 K
@?@ @ @9 J@<C@(C0 A J E
 I

@6@1 I@0@0@5@8 I@1 E@1 I@4@5
@5@9 J@<C@C4 A J

 E I


@6@ @1 I@0@0@5@8 I C@ @ @/
@/@/@8 K@A@)
 Hb@'	@G@G@F@@@F@)
 K@1 K@1 @.@.@5@2 J@1 I@.@2 I@4@5@2 I@1 I@4@5@5@/@8 K
@1 E@5@/@8 K
@ @ @8 I@?@ @ @9 J@<C@+CI A J I I


@6@ @1 I@0@0@5@8 I@1 I@1 I
@4@5@5@8infer_by_uq_imp_hyp B@?@<C@(CN A J I
 I

@6@1 I@0@0@5@8 I@1 I
@2 I@4@5@8 K@?@<C@*CT A J I I


@6@ @1 I@0@0@5@8 I@1 I@2 I
@4@5@8 K@?@<C@(CY A J I
 I

@6@1 I@0@0@5@8 I@1 I
@2 I@4@5@8 K@?@<C@(C^ A J E
 I

@6@1 I@0@0@5@8 I@1 E
@2 I@4@5@8 K@?@<C@*Cc A J E I


@6@ @1 I@0@0@5@8 I@1 E@2 I
@4@5@8 K@?@<C@4Ci A J K 

 J


@6@1 
@5@ @/@8uq_infer B@1 
@5@ 
@/@8 K@?@ @ @9 J@<C@/Co A J K 

 J


@6@?@A@1 
@5@ @8 K@@@1 
@5@ 
@9 K@<C@FCw A J		 K 

 F
 J


@6@1 K@1 
@5@2 F
@5@/@8 J@1 K@1 
@5@2 F@5@/@8 J@?@ @ @9 J@<C@AC| A J K 

 F
 J


@6@A@1 K@1 
@5@2 F
@5@8 J@@@1 K@1 
@5@2 F@5@8 J@?@<C@C A J K 

 F J I

 I
 I]

 I I J
 I]



@6@?@1 K@1 
@5@2 F@1 J@1 I
@5@2 I

@5@2 I@1 I@4
@5@5@/@8 J@1 I@5@/@8 J@ @ @8 J@?@<C@{C A J		 K 

 F J I

 I
 F

 I I J
 K



@6@?@1 K@1 
@5@2 F@1 J@1 I
@5@2 I
@2 I]
@5@2 I@1 I@1 J@3@1 I]
@5@5@5@4
@5@5@8 J@?@<C@C A J K 

 F J I

 I


 I I


@6@? I@ @ @ 
@ @/@/@8update_chain_infer B@A@=@1 K@1 @.@5@2 F@1 J@1 I@.@5@2 I@.@5@2 J@1 I@0@2 I@4@5@2 I@1 I@4@5@.@5@/@8 K
@@@;@1 K@1 @.@5@2 F@1 J@1 I@.@5@2 I@.@5@2 J@1 I@1 I@4@5@.@5@2 I@0@2 I@4@5@/@8 K
@1 I
@5@/@8 K
@1 I@5@/@8 K
@1 I@5@/@8 K
@?@ @ @/@8 J@ @ @/@8 J@ @ @/@8 J@ @ @9 J@<C@}C A J K 

 F J I

 I
 I]

 I
 I J
 I]


@6@?@1 K@1 
@5@2 F@1 J@1 I
@5@2 I

@5@2 I@2 I@4
@5@/@8 J@1 I@5@/@8 J@ @ @8 J@?@<C@yC A J		 K 

 F J I

 I
 K

 I
 I J
 K


@6@?@1 K@1 
@5@2 F@1 J@1 I
@5@2 I
@2 I]
@5@2 I@2 I@1 J@3@1 I]
@5@5@5@4
@5@8 J@?@<C@C A J K 

 F J I

 I


 I
 I

@6@? E@ @ @ 
@ @/@/@8 K@A@=@1 K@1 @.@5@2 F@1 J@1 I@.@5@2 I@.@5@2 J@1 I@.@2 I@4@5@2 I@1 I@4@5@0@5@/@8 K
@@@;@1 K@1 @.@5@2 F@1 J@1 I@.@5@2 I@.@5@2 J@1 I@1 I@4@5@0@5@2 I@.@2 I@4@5@/@8 K
@1 I
@5@/@8 K
@1 I@5@/@8 K
@1 I@5@/@8 K
@?@ @ @/@8 J@ @ @/@8 J@ @ @/@8 J@ @ @9 J@<C@@C A J		 K 
 F J I

 I



@6@1 E@5@/@8 J@ @ 
@/@8	subst_vbl B@ @/@8 J@?@ @ @9 J@<C@'C A J K 
 F J I

 I

@6@1 I@5@8 J@?@<C@C A J

 K 

 F J I

 I
 I]

 E I J
 I]



@6@1 K@1 
@5@2 F@1 J@1 I
@5@2 I

@5@2 E@1 I@4
@5@5@8 K
@1 I]
@5@ @/@8 K @1 E@5 @.@8 I@?@<C@zD A J		 K 

 F J I

 I
 K

 E I J
 K



@6@1 K@1 
@5@2 F@1 J@1 I
@5@2 I
@2 I]
@5@2 E@1 I@1 J@3@1 I]
@5@5@5@4
@5@5@8 J@?@<C@bD A J

 K 

 F J I

 I
 I]


@6@1 K@1 
@5@2 F@1 J@1 I
@5@2 I

@5@5@/@8 K
@1 I]
@5@ @/@8 K @ @/@8 K
@ @ @8 J@?@<C@DD# A J K 
 F J I

 I
 I I



@6@ @ 
@/@8 K @1 I@1 I@4@5@5@8 K
@?@<C@1D* A J K 
 F J I

 I

 I I

@6@1 I@5@8 J@?@<CD. A J K 


@6@?@1 
@5@ @9 K@<XPtry_obvious_substitutions  CF A I  @6 F@9@!do_obvious_substitutions_at_depth B@<XPreplace_conc_rule1 C@%GZ A I@6@" I
	@#@0c@8	var_const B@/
@/@8replace_rule
 A@? Jvuser_rule_no F@ @8substitute_and_eliminate B@R@<C@&Gb A I@6@" I

	@#@0 K*@8 K+@/
@/@8 K.@? Jv K2 F@ @8 K3@R@<C@%Gj A I@6@" I
	@#@0 K*@8 K+@/
@/@8 K.@? Jv K2 F@ @8 K3@R@<C@&Gr A I@6@" I

	@#@0 K*@8 K+@/
@/@8 K.@? Jv K2 F@ @8 K3@R@<XD  t  t t  At  J ADPfind_element CA A J\ J

@6@1 I	@5@8infer B@?@ @8 K6 B@?@<CA A J\ J



@6@1 E	@5@8 K8@?@<C@+A A J\

@6@D@8 E^@M@Q@3	mk__array@.@5@8 Dspark@8 BA
 B
@ @/
@8 A J@ 
@ @9 Je@<C@2A! A J\

@6@D@8 E^@M@Q@3@.@.
@5@8 D@ @0array@8mk__function_name I K=@8 K>@ 
@/@8 KA@ @ @9 Je@<CA) A J\ I	@6@?@<XPform_number CF A	u F        @6@9form_number_from_base B@<XPapply_deduction CD A J@6@8deduce_formula B@?@<CD A J@6@8allow_new_strategies  B@1 J@0@5@8 @I@?@8try_new_deduction_strategies B@?@<XPhas_complexity C	A A I
 @6@8 E^@?@<CA A I@6@U@?@3@0@.
@5@8 D@/@8have_complexity B@b@g@c@o@x@<XP K C@!@B A J E
	
@6@A@1 E	
@5@8 J@@	@1 E
	@5@8 J@?@R@<C@K A J E
	
@6@1 E	
@5@9 J B@<C@M A J E
	
@6@1 E	
@5@9retreat_used_facts B@<C@P A J I
	
@6@1 I	
@5@8 J@?@R@<C@U A J I
	
@6@1 I	
@5@9 K]@<C@W A J I
	
@6@1 I	
@5@9 K^@<C@Z A J I
	
@6@1 I	
@5@8 J@?@R@<C@_ A J I
	
@6@1 I	
@5@9 K]@<C@a A J I
	
@6@1 I	
@5@9 K^@<XD  t  t t  At  A ADD  t  t t  At  A AED  t  t t  At  A 
P A
CC    A A@=CC    A A@=CC    @ A@=CC    @ @@=CC  
 Hr@6@7 shared_object_extension@9 D@<XP J C
B_ A J6finish finish@6@?@<CBc A J6line
line 
@6@ @8integer_to_atom
 A@?@<XParray_simplify C@ @ A J\ J


@6@?@1 J
@5@/
@8 J@?@ 
@8do_array_simplify B@?@<C@ A J\ I

@6@?@1 I
@5@8 Km@?@<XPgcd CC A I
@6@?@<CC A I
 @6@?@<CC A I@6@b@h@i@t@b@i@c @t@b@h@i@m I@y@?@ @9 Kp B@<C	C A I
@6@?@'
@<C
C A I@6@b@i@c @t@?@9 Kr@<XPinference_rule_match C@'A A B@6@U	@/@/
@8 EW@?@/@ @ 
@8 EW@ @/@ @8inference_rule_match_x B@ 
@ @ @9	add_conds B@<XPsequence_infer CD A J E
@6@1 E@1 G
@5 @5@8 J@?@<CD A J E
@6@1 E@1 K}
@5 @5@8 J@?@<C@*D A J E D

@6@1 E
@5@/@8 K{ B@1 E@5@/
@8 K~@?@ @ 
@8 J@?@<C@)D A J E D

@6@1 E
@5@/@8 K~@1 E@5@/
@8 K~@?@ @ 
@8 J@?@<CD A J E D

@6@?@<CD A J E D

@6@?@<CD A J E
 D
@6@?@<CD A J E
 D
@6@?@<C@*D A J E

@6@1 E
@5@/@8 J@1 E
@5@/@8 K~@?@ @ @8 J@?@<CD A J E D J
nonfirst

@6@?@<CD A J E
 D J
 K
@6@?@<CD A J E Dnonlast
 J

@6@?@<CD A J E
 D K
 J
@6@?@<CD A J E K


@6@1 E
@5@8 J@?@<C@&D A J E K

@6@/
@3@0@5@3
@5@8 K@1 E
@5@8 J@?@<C@1D A J E D

 D


@6@1 E
@5@/@8 J@1 E
@5@/@8 J@?@ @ @8 J@?@<CD A J E

@6@A@'
@)	@@
@1 E
@5@8sequence_infrule B@?@<C
E  A J I@6@?@<C	E A J I@6@?@<CE A J I

@6@1 I
@5@8 J@?@<CE A J I



@6@1 I
@5@8 K~@?@<C@$E A J I D

@6@A@1 I
@5@8 K~@@	@1 I@5@8 K~@?@<CE
 A J I D


@6@1 I@5@8 K~@?@<CE A J I D

@6@1 I
@5@8 K~@?@<CE A J I D

 D

@6@1 I@5@8 K~@?@<CE A J I D

 D
@6@1 I
@5@8 K~@?@<CE A J I

@6@1 I
@5@8 K@?@<XPhoist_vc_conclusions C@ A J6@6@1get_vcg_conclusion@.
@.@5@8 J@ conc@8process_component B@R@<C@ A J6@6@?@<XP
is_update_hyp CH A I@6@1 E	@5x@8 J>@0v@8 K+@9is_update_composite_hyp B@<XPwrite_new_action_part CFu A I&
	
@6@8 K B &@8 I@8 I@8 K@?@<CF{ A I J]
	
@6@8 I@8 I@8 I' := @8 I@8 I@?@<XPfetch_and_increment_stack_depth CM A I@6@1 J@.	@5@8 J@b@i@c@o@x@1 J@5@8 H_@?@<CM A I@6@1 J@5@8 H_@?@<XD  t  t t  At message_property AED  t  t t  At  K 
P
out_number_rj C@.Av A	u F        @6@/
@8size B@A@!@1 @
@5@#@b@g@c @u@@@( @ @8spacer Kj@?@8 C :  @8 K@?@<XPpromote_to_hypotheses CE A B @=CE A B	
@6@8promote_fact_to_hypothesis B@?@9 K B@<XP@)eliminate_complementary_pair_disjunctions  CE) A I@6@1 J@.@.	@5@0@/
@8 J>@1 J	@5@8redundant_disjunction BP-or-not-P disjunction@8save_eliminate B@R@<XPsee_if_can_infer C@O A J@6@8could_infer B@?@<C@S A J@6@8could_not_infer B@?@R@<C@X A J@6@8 J@1 K	@5@8 @L@?@<C@] A J@6@1 K@5@8 @L@?@R@<XPperform_forward_inferences  C@'B A I@6forward_inferences@8initialise_counter B@1
pairing_depth@0@5@8 @I@1 K?@5@8 @L@8 De K@8increment_counter B@/@8 K B@8form_new_pairing B K@8 K@8@)sufficient_forward_inferences_or_too_deep  B@?@<XP
choose_max C$( A J

@6@1 I
@5 @.@8 I@?@'	
@<C$, A J

@6@1 I
@5 @.@8 I@?@'	@<C@"$0 A J
@6@ @/@8 K B@?@A@1 I
@5 @.@8 I@'	
@@@'	@?@<XPdo_rule_substitutions2  CG| A I @6@D@8 J#@M@Q@?@<CG A I@6@8 J#@/@/	@/
@8 K. Jv K2 F@8 K3@R@<C@3G A I@6@8 J#@1 @.@.	@5@/
@/@8user_rewrite_rule K1@8 E@ @8 E@0 K*@8 K+ Jv@1
user_rule_yes@2 	@5 F@ @8 K3@R@<CG A I  @6@?@<XP JT C@ A I  @6@8no_log_file 
 A@1 J@0@0@5@8 @I@?@<C@ A I  @6 Ji@8typecheck_only Jm@1 J@0@0@5@8 @I@?@<C@ A I@6 Jq@8 K@/@8logfile_name K@/	@8 I B@8 D B@8 I@8 I@8write_vc_or_pf_header  B@8process_log_facts  B@8 K@?@<XP J2 CGC A I@6@8get_proved_conc
 B@?@<CGG A I@6@/	 K@8get_conc
 B@A@8 K( B@F
@@
@/
 K@8 K@9 K@<CGU A I@6@?@<XPswisav_simplifier  C@ @ A A  @6@8zero_defects_reported  B	spadesimp@3@1 H @.@5@4@1 Isimplifier_main@5@4@1 F @-@5@5@8 E @9 H@<C@ A A  @6@8report_total_defects  B@9 H@<XPbuild_list_of_errant_files CAI A	u F        	
@6@1syntax_error_in_file	@5@8 J@?@9 L B@<CAN A L @=XPsimplify_path_functions C@ A J6@6 Ji@8get_switch_typecheck_only JmType checking path function: @8 I@8 I@8hoist_pf_traversal_conditions B@8 K Kj@8hoist_pf_actions B - OK@8 I@8 JQ@?@<C@ @ A J6@6 Jq@8 L@8refactor_write_vcs_top B@8 L@8 L@8 L@8simplify_vc  B@8refactor_write_vcs B@8report_to_user B@?@<XP J CD4 A J  @6@8 KR@?@<XPtest_if_contradiction C@)C A I@6@3@0@4@.
@4@0@5@8 D@8 J @-@8 Ifound_contradiction@8 @L@8@!issue_found_contradiction_message  B
contradiction@3contradictory-combination@4	@5@8 J{@R@<XP
base_rational CA A	u F         I
	@6@8positive_rational B @9 I@<CA A L1@6@9 L2@<XPset_exit_status  CA( A L  @6@?@<XPsplit_rational C@&A A L1 I 

 I@6@ @8 H@b@g@c @t@ @8 H@b@g@c @t@<C@!A A L1 

@6@ @8 H@b@g@c @t@ @8 H@b@g@c @t@<C
A A L1
@6@9 I@<XPmaybe_semi_stan C@JA A I

@6@8 J:@?@/@/@/
@/@8is_relational_expression B@?@ @ @/@8 JF@?@ 
@ @/@8 JF@?@/@3@4@4@5@8 D@?@A@'@@@ ss@0@8
complexity B@ @8save_semi_stan_fact B@?@<XPsatisfy_goal_A_or_B CDR A B@6@ @9rule_phase_infer B@<CDU A B@6@ @9satisfy_goal B@<XD  t  t t  At know_substituted ADP J CC A I
@6@8 H@b@h@c @t@?@<CC A I @6@?@R@<C	C A I I @6@?@R@<CC A I I@6@8 I@b@h@c @r@?@1 I@5@9 I@<XP@,maybe_echo_pf_trace_statement_pfpositionfrom C
B8 A J6 @start @6@?@<CB; A J6 Kd
 Kf
@6@ @8 Kg@?@<XPmake_breakdown_list CF4 A I E

 E
@6@?@ @9 LQ B@<CF8 A I I

 I
@6@?@ @9 LS@<CF< A I I

 I
@6@?@ @9 LS@<CF@ A I I

 I
@6@?@ @9 LS@<CFD A I I

 I
@6@?@ @9 LS@<CFH A I I

 I
@6@?@ @9 LS@<C@#FL A I I]





@6@ @ @ 
@8breakdown_term B@?@ @9 LS@<C@&FQ A I @





@6@1 I@5@ @ 
@8 LT@?@ @9 LS@<CFV A I


@6@ @8 LT@?@<XP J CC A I@6@/@8know_term_breakdown B@/
@8 LW@?@ @ 
@ @9 I B@<XPis_inequality_with_updates CK A I J
@6@9 L[ B@<CK A I I

@6@ @8find_update_cases B@?@<CK A I I

@6@ @8 L^@?@<CK A I I

@6@ @8 L^@?@<CK A I I

@6@ @8 L^@?@<CK A I E

@6@ @8 L^@?@<CL A I I

@6@ @8 L^@?@<XPwrite_log_file_banner  C@@ A I  @6@8 K@?@<C@C A I  @6 Ji@8 K@?@<C@F A I@6 Jq@8 K@/@8 K@/	@8 K@8 K@/
@8 H @8display_banner
 B<@8 K@?@<XPsimplify_if_allowed C
N A I@6@8 Jf B@?@8 I@?@<CN A I
@6@?@<XPdo_try_to_infer C@nD A J@6@/
@3@4	@4
@5@8 D@A@ @1 J@0@5@8type I@?@ 
@ @8 J@F@@@G@A@ @1sequence@0@5@8 Ln@?@ 
@ @8 K~@F@@@2@A@ 
enumerated@8 Ln@ @/@8 Imain@8handle_nested_used_facts B@ 
@ @ @8enumerated_infer B Lt@8restore_nested_used_facts B@@ Lt@8 Lu@ 
@ @ @8 KM B Lt@8 L{@F@?@<XPmatch_up CB A B@6@?@<C@<B A B@6@/@/@8seek_solutions B@ @8 I@ @/
@/@8split B@ 
@/@/@8try_to_satisfy B@ @ @/@8 K@ @/@/@8 L B@ @ @8 K@ @ @9 K@<XP
do_push_vc CMh A I@6@/	@/
@/@8 J>@1stack@2 J?	
@5@8 @L@R@<CMm A I@6@/	@8get_next_hyp_id J@@1 L@2 L	@5@8 @L@R@<CMr A I@6@/	@/
@/@8
prune_conc K@1 L@2 K	
@5@8 @L@R@<CMw A I@6@/	@8prune_proved_conc K@1 L@2 K	@5@8 @L@R@<CM| A I@6@1 J@.	@.
@5@8 J@1 L@2 J	
@5@8 @L@R@<CM A I@6@?@<XP
out_number_lj C@,A A K@6@/
@8 K@A@b@c@j@m @@y@b@g@c @u@@@( @8 K: @8 K@?@ @8 K@?@<XD  t  t t  At potential_subst_fact ADP@-try_simplifying_implications_and_equivalences  C@;E A I@6@1 F@.@.	@5 K@/
@8 J>@D
forwardchain2@3
@4@0@4	@5@8 J B@M@Q@/@8 K: B@8update_implication B L@3
@4@4	@5@8 J{@R@<C@IF A I@6@1 JX@.@.	@5 K@/
@8 J>@D L@3
@4@0@4	@5@8 L@M@Q@/@8 L@D
@ @8 J@M
@Q K@8update_equivalence B L@3
@4@4	@5@8 J{@R@<C@IF A I@6@1 JX@.@.	@5 K@/
@8 J>@D L@3
@4@0@4@5@8 L@M@Q@/@8 L@D
@ @8 J@M
@Q K@8 L L@3
@4@4@5@8 J{@R@<XP I C@K A L1@6@T	@?@R@<C@O A L1
@6@8 H@b@h@c @u@?@<C@S A L1@6@8 H@b@i@c @r@?@b@i@l I@y
@" I
@#@?@<C@\ A L1
 I I
@6@8 I@?@<C@<@` A L1
 I
@6@/@8 I@?@A@) @) @@@#@A@ @8 H@b@g@c @t@" I@#@@
@" I@#@b@h@c @t@?@<C@C@m A L1
 I]

@6@/@8 I@/
@ @8 I@?@b@g@g
@o@y@A
@b@g@c @u@'@F@@@b@g@c @r@b@g@l I@y@" I@#@?@<C@| A L1
 @

@6@1 I]
@2 I@5@8 I@?@<C@C@ A L1
 I

@6@/@8 I@/
@ @8 I@?@b@g@g
@p@y@A
@b@g@c @u@'@F@@@b@g@c @r@b@g@l I@y@" I@#@?@<C@I@ A L1
 I

@6@/@8 I@/
@ @8 I@?@ 
 @8 I@ @ 
@/@8eval_div B@A
@b@g@c @u@'@F@@@b@g@c @r@b@g@l I@y@" I@#@?@<C@@ A L1
 I

@6 K=@8 K>@?@/@8 I@/
@ @8 I@?@ 
 @8 I@ @ 
@/@8 L@/@1 @@2 I
@5@8 I@A@) @) @@@_@A@S@ @8 I@ 
@8 I@A@!@A@b@g@c @u@b@g
@c @t@@@b@g@c @s@b@g
@c @r@'@@@&@A@b@g@c @u@b@g
@c @r@@@b@g@c @s@b@g
@c @t@1 I]
@5@8 I@@
@" I
@#@?@<C@W@ A L1
 I

@6pascal@8 K>@?@/@8 I@/
@ @8 I@?@ 
 @8 I@ @ 
@/@8 L@/@1 @@2 I
@5@8 I@A@) @) @@@A@)
@) @@
@" I
@#@?@<C@<@ A L1
**

@6@/@1abs
@5@8 I@/
@1 L@5@8 I@1 ID @5 @.@8 I@1 I
D @5 @.@8 I@1 L
@5@9exp_iss B@<C@2@ A L1
 L
@6@/@8 I@?@A@ @8 H@b@g@c @u@'@@@ @8 I@b@g@c @r@1 I@5@8 I@?@<XD  t  t t  At  K- ADP K, C
A A A K@6@9get_declarations_variable I@<C
A" A A K*@6@9get_declarations_constant I@<XPhoist_pf_actions_x C@,AC A J6@6simplified_action_part@8 @I@/	@8checkvalidactiontype B@?@A@8 L  B
simplified@3 K@4@4@4	@5@8 J{@@@S@? K@0@9add_conc K@<XPform_instantiable_hyp_facts  C@J A	u F          @6@8prune_all_forall_hyp  J@@R@<C@%@N A L@6@1 K@1 @.@.	@5@.
@5 K@/@8 J>@ @1 K@1 	@5
@5@8save_skolemisation_of B@R@<C@S A L   @=XPproved_all_conclusions  CB( A K@6@D	@0@0@/@8 K@D
@8 K@M
@Q@M	@Q@@@F@8maybe_issue_proved_vc_message  B@?@<XPfetch_minimum_complexity C@ A Khyp@6@ @ @/@8minimum_choice B@?@ 
@ @8 J>@?@<C@ A K K@6@ @ @/@8 L@?@ 
@ @8 K@?@<C@ A K@6@>HorC is not hyp or conc but is ~a in fetch_minimum_complexity.@3@5@9 B
 A@<XPuser_rule_exists C@=AS A L@6@A
@1 	@5@0@0@8user_inference_rule K1@@@+@A
@1 	@5@0@0@8inference_rule K1@@@A@1 	@5@0@0@0@8 K@@@1 	@5@0@0@0@8nonground_replace_rule K1@?@<XD  t  t t  At  L
 ADP K[ CA A I
@6@?@9 KX B@<CA A I
@6@/@8 L@?@ @/
@8 KZ@?@b@g@g
@o@x@<XPnot_too_complex C@9D% A I
@6@b@i@c @t L@0@/@8complexity_fact B@D L@0@/
@8 L@b@g
@g@t@M@Q@@@F
@b@i@g@m @@y@?@ @ @9 L B@<C	D. A I@6@?@b@i@c @u@<XPstan CA A I@6@8 J:@? H@/@8 JF@?@  J=@0@8 L?@ @8save_stan_fact B@?@<CA A I@6@?@<XP K_ C@w A J E
	
@6@1 J@2 E	
@5@8 J@?@R@<C@{ A J E
	
@6@1 J@2 E
	@5@8 J@?@R@<C@ A J I
	
@6@1 J@2 I	
@5@8 J@?@R@<C@ A J I
	
@6@1 J@2 I	
@5@8 J@?@R@<XP@.maybe_echo_pf_trace_statement_pfsuccessors_int CBA A J6
 J

 successor(s)@6@8 Kg@?@<XP JJ C@2FO A I@6@/@3 J=@4@.@5@/
@8 J>@ 
@8 I@D@ 
@8know_eliminated B@M@Q@ @ @3
@5	reduction@8join B@R@<C@0FV A I@6@0@/@/@/
@8join_hyp B@D@ 
@8 J@M@Q@D@ 
@8exists_eliminated_in_list B@M@Q@ @ @ 
 L@8 L@R@<CF] A I@6 @-@/@8 JA B	redundant@ @8 K@?@<XP J CC A I@6@/@8 Kr@1 I@1 I	@5@5@8 I@?@<XP
createlist CB\ A I I]


@6@ @8 M B@?@<CB` A I
@6@8product B@?@<XPdo_satisfy_goal CB A B
@6@U@" I
@#@?@ @8evaluate_immediate_condition B@?@<CB A B@6@1current_sat_goal@0@5@8 @I@1 M@5@8 H_@?@9try_satisfy_goal B@<XPclose_log_file  C@X A I  @6@8 I@8 K@?@<C@] A I  @6 Ji@8 K@?@<C@a A I@6 Jq@8 K@/@8 K@/	@8 K@8 K@8 E  B@8 K@?@<XPnext_value_to_try C@-K
 A I@6@/
@8 I@A@8 I@1 I]@5@8 I@F@@@/@8 I@1 K@5@8 I@ @8 J@?@<XP
record_access C@+@g A J\@6@/ J@0@3@.
@4@.@5@8 K@?@A@'@?@ @ @8 I@@@ 
@ @8 M B@?@<C@5@s A J\@6@D@8 E^@M@Q@3
mk__record@.@5@8 D K=@8 K>@?@0 @^@/
@0@8 K@1 J]
@.@5@ @8 J@ @ @8 I@?@<C@<@} A J\	@6@D@8 E^@M@Q@3@.@.
@5@8 D@  B@8 KD K=@8 K>@?@0 @^@/@0@8 K@1 J]@.@5@ 
@8 J@ @ @8 I@?@<C@@ A J\@6@A@/@8record_simp_of_type B@@@!@A
@"
 I@#@/@8 Kk B@@@A
@"
 J@#@/@8 M#@@@&
@?@A@  J@/
@3@.@4@5@8 K@G@G@@@v@A@'@/@  J@0@3@.@4@.@5@8 K@ @8 I@?@ @ @8 M@F
@G@@@M@A@4@ @3@.
@.@5@8 D@ 
 B@8 KD K=@8 K>@?@0 @^@/@0@8 K@1 J]@.@5@ @8 J@?@ @ @8 I@@@  @^@/
@3@5@8 K@G@F@G@?@<XD  t  t t  At candidate_lower ADP K CA A K
@6@b@h@c
@r@?@<CA A K
@6@b@h@c@d@r@?@<CA A K
@6@b@h@cC@r@?@<CA A K
@6@b@h@c'@r@?@<CA A K
@6@?@<XPsee_if_know_P_and_not_P C@@Bi A I@6@/	@/
@/@8 J>@/@8 JC@A@ @/
@8 L@@@)
 K L@ @8sufficiently_low_complexity B@8 J:@A@ @/
@8try_infer_standard_form_of B@@@ @/
@8try_infer_semi_standard_form_of B@?@3@5@ 
@8 J@?@<XP L CA9 A J6@6@/	@8get_pfs_action
 B@8 L B@R@<CA> A J6@6@?@<XPreport_to_user_deadpaths CC A J6@6@/	@8 Jn@/
@8 K A@8 KVC: @8 I@8 I@8report_to_user_deadpaths_x B@8 K@?@<XP@ try_reducing_disjunction_options  CD A I  @6@8 De@8reduced_all_disjunctions  B@?@R@<XPtry_replacement CD4 A I@6@8 I@?@R@<C@lD9 A I
@6@/@/@/
@8
get_subst_hyp
 B@ @/@8 L@/@8complexity_limit Jm@b@g@c@g@p@s@D@3@4	@5@ @8 J@M@Q@D@3	@4@5@ @8 J@M@Q@ @/@8 K @ @ @8 I@3
@5@ 
@/@8 J@ @3@3@4	@5@5@ @9maybe_stan_and_store_hyp B@<C@cDF A I	
@6@/ K@/@8 J> L@ @0@/
@8 L@D L@ @0@/@8 L@b@g@g
@t@M@Q@@@F@/@8 MF@b@g
@c@g@p@s@ @/@8 K @ @ @8 I@ @8 I@ @3@3@4	@5@5@3@4
@5@9 MI@<XPmaybe_issue_syntax_reminder  CA8 A L@6@0@8 L	 B@?@/@8 L@8write_error_preamble  B@:Syntax error in a user rule file. Refer to log (slg) file.@8 I@8 I@6The following user rule files contain a syntax error: @8
issue_message B@EScroll back the screen log or consult the log (slg) file for details.@9 MT@<CAD A L  @6@?@<XPand_bit_strings CF A KI 


 

@6@?@ @ @ 
@9 MX B@<CF A KI


@6@?@ @ 
@ @9 MZ@<CF A KI
@6@?@<CF A KI
@6@?@<XP L CA A J6@6verification_conditions@8 B@ K@@8write_before_vc_banner B@?@<CA A J6@6deadpath_search@8 M\@8 M^@?@<CA A J6@6 B@8 M\@8write_before_pf_banner B@?@<XPwrite_rules_read  C@p A I @6@Dread_in_user_rule_file@0@8 L@M@Q@?@<C@9@t A I@6@D
@8 K@M
@Q Jq@8 K@/@8 K@/	@8 K@8 K@8 I@8 Irules_read_sec@8 I@5The following user defined rule files have been read:@8 I@8 I@8write_the_rule_files  B@8write_rule_syntax_errors  Bsemantic_sec@8 I@.No semantic checks are performed on the rules.@8 I@8 I@8 K@?@<XPoneint CBC A I I

@6@ @8 I@1 I
@5@8 I@?@<CBH A I I

 I
@6@ @8 Mr B@?@<CBL A I I]

 I]


@6@ @8 Mt@ @ 
@8 Mt@?@<C	BQ A I
@6@8term B@?@<XPis_targeted_disjunction CLD A I@6@8split_disjunction B@/
@8 G@b@j@c@u@/@8
max_disjuncts B@b@j@g@s@?@<XP I CE A I I]

@6@ @8 I@1 I@5@8 I@?@<CE A I @

@6@ @8 I@?@<CE A I
 @6@?@<XPwrite_unit_conc_part C
B A K@6@8 B  K@@?@.          (unit action: no variables affected)@8 K@9 C_ @<C
B A K@6@0*** true .          /* all conclusions proved */@8 K@8 M@9 M@<XPreorder CD" A I I
@6@8 M B@?@<C@ D& A I I
 I
 I
@6@ @8 H@1 I
@5@ @8 M@?@<CD+ A I I

@6@/@8 M@1 I@5@8sp B@?@<C	D0 A I
@6@8 Mu@?@<XD  t  t t  At used_unique_reference ADD  t  t t  At candidate_upper ADPclear_up_stack_facts  CMQ A I  @6@1 L@0@0@5@8 @I@1 J@0@5@8 @I@1 J@0@0@0@5@8 @I@8@(clear_up_could_and_could_not_infer_facts  B@?@<XPwrite_path_action CA A K
 K

@6@?@8 M B@? K@8 K@8 M@?@ @8 M@?@<C@,A A K
 J]

@6@8 K@8 G B := @8 K@A@ @/@8 I@@@&@?@ @8 M@?@<C
A A K
@6        unit function@8 K@?@<XPlimited_extended_infrule C
# A J@6@)
 @) @?@9standard_infrule B@<C# A J@6@b@j@c @t@A	@8 M@'
@@
@8extended_infrule B@ @b@j@c@m @@x@<XPwrite_next_hypothesis CAQ A K@6@8 M@?@8 K B@8 M .@8 K@9 M@<CAY A K@6 I@8 K@8 L B@8 M M@8 K@9 M@<XPbigger_than_all_hyps CL A I@6@0@0@/	@8 J>@b@i@h@u@?@R@<CL A I@6@?@<XP J C@0 A L
@6@?@<C
@3 A L


@6@8 J@?@<XPsee_if_know_false CBb A I
	@6 @-@0@8 J>@?@<XD  t  t t  At already_know_indentation ADPrestructure_vc CL^ A I@6@9movenots B@<CLa A I@6@9
split_hyps B@<CLd A I@6@9split_concs B@<CLg A I@6@9do_implication B@<CLj A I@6@9equivalence B@<CLm A I@6@?@<XPdeduce CAq A J  @.
@=CAr A J@6@9infrule B@<C@VA A J I

@6
le_trans_1@8i_am_using_rule B@ @8 J@A@1 I@.
@5@8 M@ 
@8 J@)	 @!@1 @
@5@#@@@1 I@.
@5@8 M@1 I
@5@8 K@ 
@8 J@&
@1 I@5 @.@8 I@?@<C@VA A J I

@6
le_trans_2@8 M@ @8 J@A@1 I@.
@5@8 M@ 
@8 J@)	 @!@1 I]
@5@#@@@1 I@.
@5@8 M@1 I
@5@8 K@ 
@8 J@&
@1 I@5 @.@8 I@?@<C@=A A J		 I

@6
le_trans_3@8 M@ @8 J@)	 @/
@1 I]@5@8 I@1 I@.@5@/@8 M@1 I
@5@/@8 M@?@ @ @9 J@<C@BA A J		 I

@6le_trans_3b@8 M@ @8 J@)	 @/
@1 I]@5@8 I@1 I@1 I]@5@.@5@/@8 M@1 I
@5@/@8 M@?@ @ @9 J@<C@?A A J	 I

@6
le_trans_4@8 M@1 I@.
@5@8 M@D@ 
@8 J@M@Q@D@ 
@8 E^@M@Q@1 I
@5 H@/@8 JF@  @.@8 I@?@<C@VB
 A J I

@6
ge_trans_1@8 M@ @8 J@A@1 I@.
@5@8 M@ 
@8 J@)	 @!@1 @
@5@#@@@1 I@.
@5@8 M@1 I
@5@8 K@ 
@8 J@&
@1 I@5 @.@8 I@?@<C@VB A J I

@6
ge_trans_2@8 M@ @8 J@A@1 I@.
@5@8 M@ 
@8 J@)	 @!@1 I]
@5@#@@@1 I@.
@5@8 M@1 I
@5@8 K@ 
@8 J@&
@1 I@5 @.@8 I@?@<C@=B6 A J		 I

@6
ge_trans_3@8 M@ @8 J@)	 @/
@1 @@5@8 I@1 I@.@5@/@8 M@1 I
@5@/@8 M@?@ @ @9 J@<C@QBC A J I

@6
lt_trans_1@8 M@ @8 J@A@1 I@.
@5@8 M@ 
@8 J@1 I
@5 @.@8 I@@@"@1 I@.
@5@8 M@1 I
@5@8 K@ 
@8 J@1 I
@5 @.@8 I@?@<C@QBR A J I

@6
lt_trans_2@8 M@ @8 J@A@1 I@.
@5@8 M@ 
@8 J@1 I
@5 @.@8 I@@@"@1 I@.
@5@8 M@1 I
@5@8 K@ 
@8 J@1 I
@5 @.@8 I@?@<C@QBd A J I

@6
gt_trans_1@8 M@ @8 J@A@1 I@.
@5@8 M@ 
@8 J@1 I
@5 @.@8 I@@@"@1 I@.
@5@8 M@1 I
@5@8 K@ 
@8 J@1 I
@5 @.@8 I@?@<C@QBs A J I

@6
gt_trans_2@8 M@ @8 J@A@1 I@.
@5@8 M@ 
@8 J@1 I
@5 @.@8 I@@@"@1 I@.
@5@8 M@1 I
@5@8 K@ 
@8 J@1 I
@5 @.@8 I@?@<CA!B A J	 E I]



@6eq_1@8 M@A@1 E@1 I]@5
@5@8 M@G@F@@@@A@1 E@2 @
@5@8 M@G@F@@@@A@1 I@5@/@8evaluate B@1 E@2 I]
@5@8 M@G@@@@A@s@ @8 J@A@ @1 E @5 @.@8 I@A
@1 E
@5@8 M B@@@?@R@F@@@H@A@$@ @8 J@A@1 I]@5@/@8 M@1 E
@5@8 M@@@?@R@F@@@"@ 
@8 J@A@1 @
@5@/@8 M@1 E@5@8 M@@@?@R@F@G@@@M@D@ @8 J@M@Q@D@ 
@8 J@M@Q@A@0@U@1 E@.@5@/@8 M@1 E@5@8 K@1 E@1 I]@5
@5@/@8 M@ @ @8 K@@@?@R@G@F@<C@,B A J E I]



@6@ @8 J@D@ @8 J@M@Q@1 E@1 I]@5
@5@9 M@<C@+B A J E @



@6@ @8 J@1 I@5@/@8 M@1 E@1 I]@5
@5@9 M@<C@*B A J E
 @


@6@ 
@8 J@1 I
@5@/@8 M@1 E@1 I]@5@5@9 M@<C@+B A J E @



@6@ @8 J@1 I@5@/@8 M@1 E@1 I]@5
@5@9 M@<C@3B A J E
 I]


@6@ @8 J@ @1 I]@0@0@5@8 I@ @1 @@0@0@5@8 I@1 E@1 I]
@5@5@9 M@<C@3B A J E
 I]


@6@ 
@8 J@ @1 I]@0@0@5@8 I@ @1 @@0@0@5@8 I@1 E@1 I]
@5@5@9 M@<C@<B A J E
 @


@6@ @8 J@ @1 I]@0@0@5@8 I@ @1 @@0@0@5@8 I@1 I
@5@/@8 M@1 E@1 I]@5@5@9 M@<C@?B A J	 E I]



@6@ 
@8 J@D@ @8 J@M@Q@D@ @8 J@M@Q@1 I@5@/@8 M@1 E@1 I]
@5@5@9 M@<C@6B A J E @



@6@ 
@8 J@D@ @8 J@M@Q@D@ @8 J@M@Q@1 E@1 I]
@5@5@9 M@<CB A J I @

 @

@6@1 I
@5@9 M@<CB A J I I]

 I]

@6@1 I
@5@9 M@<C@,B A J I I]



@6@ @8 J@D@ @8 J@M@Q@1 I@1 I]@5
@5@9 M@<C@+B A J I @



@6@ @8 J@1 I@5@/@8 M@1 I@1 I]@5
@5@9 M@<C@*B A J I
 @


@6@ 
@8 J@1 I
@5@/@8 M@1 I@1 I]@5@5@9 M@<C@+B A J I @



@6@ @8 J@1 I@5@/@8 M@1 I@1 I]@5
@5@9 M@<C@3B A J I
 I]


@6@ @8 J@ @1 I]@0@0@5@8 I@ @1 @@0@0@5@8 I@1 I@1 I]
@5@5@9 M@<C@3B A J I
 I]


@6@ 
@8 J@ @1 I]@0@0@5@8 I@ @1 @@0@0@5@8 I@1 I@1 I]
@5@5@9 M@<C@<B A J I
 @


@6@ @8 J@ @1 I]@0@0@5@8 I@ @1 @@0@0@5@8 I@1 I
@5@/@8 M@1 I@1 I]@5@5@9 M@<C@?B A J	 I I]



@6@ 
@8 J@D@ @8 J@M@Q@D@ @8 J@M@Q@1 I@5@/@8 M@1 I@1 I]
@5@5@9 M@<C@6B A J I @



@6@ 
@8 J@D@ @8 J@M@Q@D@ @8 J@M@Q@1 I@1 I]
@5@5@9 M@<CA2B A J	 I I]



@6ineq_1@8 M@A@1 I@1 I]@5
@5@8 M@G@F@@A@A@1 I@2 @
@5@8 M@G@F@@@@A@1 I@5@/@8 M@1 I@2 I]
@5@8 M@G@@@@A@@ @8 J@A@ @1 E @5 @.@8 I@A
@1 I
@5@8 M@@@?@R@F@@@Y@A@1 E
@5@8 M@F@@@H@A@$@ @8 J@A@1 I]@5@/@8 M@1 I
@5@8 M@@@?@R@F@@@"@ 
@8 J@A@1 @
@5@/@8 M@1 I@5@8 M@@@?@R@F@G@@@M@D@ @8 J@M@Q@D@ 
@8 J@M@Q@A@0@U@1 E@.@5@/@8 M@1 E@5@8 K@1 I@1 I]@5
@5@/@8 M@ @ @8 K@@@?@R@G@F@<CBC- A J
 I I]



@6gt_1@8 M@A@1 I@1 I]@5
@5@8 M@G@G@@A@A@1 I@2 @
@5@8 M@G@G@@A@A@1 I@5@/@8 M@1 I@2 I]
@5@8 M@G@F@@A@AA@ @8 J@A@!@1 E @5 @.@8 I@A
@1 I
@5@8 M@@@?@R@G@@@@A@&@ @8 J@A@1 I]@5@/@8 M@1 I
@5@8 M@@@?@R@F@F@@@@A@&@ 
@8 J@A@1 @
@5@/@8 M@1 I@5@8 M@@@?@R@F@F@@@@A@ @U@U
@'
@A@1 I @5 @.@8 I@)
@@@?@R@G@@@@A@1 I @5 @.@8 I@1 I
@5@8 M@G@@@c@)	 @1 @@5@/@8 M@A@1 I@1 I]@5
@5@8 M@F@@@@@A@1 I@1 I]@5
@5@8 M@F@@@+@A@1 I@2 @
@5@8 M@F@@@1 I@5@/@8 M@1 I@2 I]
@5@8 M@G@@@@D@ @8 J@M@Q@D@ 
@8 J@M@Q@A@2@A@'@U@1 I@.@5@/@8 M@1 I@1 I]@5
@5@/@8 M@ @ @8 K@@@?@R@F@G@@@9@A@0@U@1 I@.@5@/@8 M@1 I@5@8 K@1 I@1 I]@5
@5@/@8 M@ @ @8 K@@@?@R@F@G@F@<C@,C A J I I]



@6@ @8 J@D@ @8 J@M@Q@1 I@1 I]@5
@5@9 M@<C@+C A J I @



@6@ @8 J@1 I@5@/@8 M@1 I@1 I]@5
@5@9 M@<C@*C A J I
 @


@6@ 
@8 J@1 I
@5@/@8 M@1 I@1 I]@5@5@9 M@<C@+C A J I @



@6@ @8 J@1 I@5@/@8 M@1 I@1 I]@5
@5@9 M@<C@,C A J I I]



@6new_gt_1@8 M@ @8 J@1 I @5 @.@8 I@1 I
@5@9 M@<C@,C A J I I]



@6new_gt_2@8 M@ @8 J@1 I @5 @.@8 I@1 I
@5@9 M@<C@+C A J I
 @


@6new_gt_3@8 M@ 
@8 J@1 I
 @5 @.@8 I@1 I@5@9 M@<C@,C A J I @



@6new_gt_4@8 M@ @8 J@1 I @5 @.@8 I@1 I
@5@9 M@<C@+C A J I
 I]


@6new_gt_5@8 M@ 
@8 J@1 I
 @5 @.@8 I@1 I@5@9 M@<C@+C A J I
 I]


@6new_gt_6@8 M@ @8 J@1 I @5 @.@8 I@1 I
@5@9 M@<C@3C A J I
 I]


@6@ @8 J@ @1 I]@0@0@5@8 I@ @1 @@0@0@5@8 I@1 I@1 I]
@5@5@9 M@<C@3C A J I
 I]


@6@ 
@8 J@ @1 I]@0@0@5@8 I@ @1 @@0@0@5@8 I@1 I@1 I]
@5@5@9 M@<C@<C A J I
 @


@6@ @8 J@ @1 I]@0@0@5@8 I@ @1 @@0@0@5@8 I@1 I
@5@/@8 M@1 I@1 I]@5@5@9 M@<C@?C A J	 I I]



@6@ 
@8 J@D@ @8 J@M@Q@D@ @8 J@M@Q@1 I@5@/@8 M@1 I@1 I]
@5@5@9 M@<C@6C A J I @



@6@ 
@8 J@D@ @8 J@M@Q@D@ @8 J@M@Q@1 I@1 I]
@5@5@9 M@<CBC A J
 I I]



@6lt_1@8 M@A@1 I@1 I]@5
@5@8 M@G@G@@A@A@1 I@2 @
@5@8 M@G@G@@A@A@1 I@5@/@8 M@1 I@2 I]
@5@8 M@G@F@@A@AA@ @8 J@A@!@1 E @5 @.@8 I@A
@1 I
@5@8 M@@@?@R@G@@@@A@&@ @8 J@A@1 I]@5@/@8 M@1 I
@5@8 M@@@?@R@F@F@@@@A@&@ 
@8 J@A@1 @
@5@/@8 M@1 I@5@8 M@@@?@R@F@F@@@@A@ @U@U
@'
@A@1 I @5 @.@8 I@)
@@@?@R@G@@@@A@1 I @5 @.@8 I@1 I
@5@8 M@G@@@c@)	 @1 I]@5@/@8 M@A@1 I@1 I]@5
@5@8 M@F@@@@@A@1 I@1 I]@5
@5@8 M@F@@@+@A@1 I@2 @
@5@8 M@F@@@1 I@5@/@8 M@1 I@2 I]
@5@8 M@G@@@@D@ @8 J@M@Q@D@ 
@8 J@M@Q@A@2@A@'@U@1 I@.@5@/@8 M@1 I@1 I]@5
@5@/@8 M@ @ @8 K@@@?@R@F@G@@@9@A@0@U@1 I@.@5@/@8 M@1 I@5@8 K@1 I@1 I]@5
@5@/@8 M@ @ @8 K@@@?@R@F@G@F@<C@,C A J I I]



@6@ @8 J@D@ @8 J@M@Q@1 I@1 I]@5
@5@9 M@<C@+C A J I @



@6@ @8 J@1 I@5@/@8 M@1 I@1 I]@5
@5@9 M@<C@*C A J I
 @


@6@ 
@8 J@1 I
@5@/@8 M@1 I@1 I]@5@5@9 M@<C@+C A J I @



@6@ @8 J@1 I@5@/@8 M@1 I@1 I]@5
@5@9 M@<C@+C A J I
 I]


@6new_lt_1@8 M@ 
@8 J@1 I
 @5 @.@8 I@1 I@5@9 M@<C@+C A J I
 I]


@6new_lt_2@8 M@ @8 J@1 I @5 @.@8 I@1 I
@5@9 M@<C@,D  A J I @



@6new_lt_3@8 M@ @8 J@1 I @5 @.@8 I@1 I
@5@9 M@<C@+D A J I
 @


@6new_lt_4@8 M@ 
@8 J@1 I
 @5 @.@8 I@1 I@5@9 M@<C@,D A J I I]



@6new_lt_5@8 M@ @8 J@1 I @5 @.@8 I@1 I
@5@9 M@<C@,D A J I I]



@6new_lt_6@8 M@ @8 J@1 I @5 @.@8 I@1 I
@5@9 M@<C@3D A J I
 I]


@6@ @8 J@ @1 I]@0@0@5@8 I@ @1 @@0@0@5@8 I@1 I@1 I]
@5@5@9 M@<C@3D
 A J I
 I]


@6@ 
@8 J@ @1 I]@0@0@5@8 I@ @1 @@0@0@5@8 I@1 I@1 I]
@5@5@9 M@<C@<D A J I
 @


@6@ @8 J@ @1 I]@0@0@5@8 I@ @1 @@0@0@5@8 I@1 I
@5@/@8 M@1 I@1 I]@5@5@9 M@<C@?D A J	 I I]



@6@ 
@8 J@D@ @8 J@M@Q@D@ @8 J@M@Q@1 I@5@/@8 M@1 I@1 I]
@5@5@9 M@<C@6D A J I @



@6@ 
@8 J@D@ @8 J@M@Q@D@ @8 J@M@Q@1 I@1 I]
@5@5@9 M@<C@D A J

 I I]



@6ge_1@8 M@  @8 I@  @8 I@ 
@8 J@A@1 I@.@5@/@8 M@ @8 J@!@1 I]@5@#@@@1 I@.@5@/@8 M@ @8 J@F@A@1 I@.@5@/@8 M@ @8 J@!@1 I]@5@#@@@1 I@.@5@/@8 M@ @8 J@F@1 I]@5@/@8 M@1 I
@5 @.@8 I@?@ @ @9 K@<C@D2 A J

 I I]



@6le_1@8 M@  @8 I@  @8 I@ 
@8 J@A@1 I@.@5@/@8 M@ @8 J@!@1 @@5@#@@@1 I@.@5@/@8 M@ @8 J@F@A@1 I@.@5@/@8 M@ @8 J@!@1 @@5@#@@@1 I@.@5@/@8 M@ @8 J@F@1 I]@5@/@8 M@1 I
@5 @.@8 I@?@ @ @9 K@<CBDF A J I I]



@6ge_2@8 M@A@1 I@1 I]@5
@5@8 M@G@G@G@@Bz@A@1 I@2 @
@5@8 M@G@G@G@@B_@A@1 I@2 @
@5@8 M@G@G@G@@BD@A@!@1 I@5@/@8 M@1 I@2 I]
@5@8 M@G@G@F@@B!@AAj@ @8 J@A@!@1 E @5 @.@8 I@A
@1 I
@5@8 M@@@?@R@G@@A;@A@&@ @8 J@A@1 I]@5@/@8 M@1 I
@5@8 M@@@?@R@F@F@@A@A@&@ 
@8 J@A@1 @
@5@/@8 M@1 I@5@8 M@@@?@R@F@F@@@@A@ @U@U
@'
@A@1 I @5 @.@8 I@)
@@@?@R@G@@@@A@1 I @5 @.@8 I@1 I
@5@8 M@G@@@@A@e@)	 @1 I]@5@/@8 M@A@1 I@1 I]@5
@5@8 M@F@@@@@A@1 I@1 I]@5
@5@8 M@F@@@+@A@1 I@2 @
@5@8 M@F@@@1 I@5@/@8 M@1 I@2 I]
@5@8 M@@@E@A@1 I@1 I]@.@5
@5@8 M@@@!@A@1 I@1 I]@.@5
@5@8 M@@@1 I@2 @
@.@5@8 M@ @8 J@1 I@5 @.@8 I@F@G@G@@@@A@_@ 
@8 J@A@(@1 I@.@5@/@8 M@ @8 J@1 @
@5@/@8 I@1 I@5@/@8 M@@@&@1 I@.@5@/@8 M@ @8 J@1 @
@5@/@8 I@1 I@5@/@8 M@ @ @8 K@F@@@R@D@ @8 J@M@Q@D@ 
@8 J@M@Q@A@0@U@1 I@.@5@/@8 M@1 I@5@8 K@1 I@1 I]@5
@5@/@8 M@ @ @8 K@@@?@R@F@F@F@F@F@F@<C@,D A J I I]



@6@ @8 J@D@ @8 J@M@Q@1 I@1 I]@5
@5@9 M@<C@+D A J I @



@6@ @8 J@1 I@5@/@8 M@1 I@1 I]@5
@5@9 M@<C@*D A J I
 @


@6@ 
@8 J@1 I
@5@/@8 M@1 I@1 I]@5@5@9 M@<C@+D A J I @



@6@ @8 J@1 I@5@/@8 M@1 I@1 I]@5
@5@9 M@<C@,D A J I @



@6@ @8 J@ 
@8 J@1 @
@5@/@8 M@1 I@5@9 M@<C@3D A J I
 I]


@6@ @8 J@ @1 I]@0@0@5@8 I@ @1 @@0@0@5@8 I@1 I@1 I]
@5@5@9 M@<C@3D A J I
 I]


@6@ 
@8 J@ @1 I]@0@0@5@8 I@ @1 @@0@0@5@8 I@1 I@1 I]
@5@5@9 M@<C@,D A J I I]



@6new_ge_1@8 M@ @8 J@1 I @5 @.@8 I@1 I
@5@9 M@<C@,D A J I I]



@6new_ge_2@8 M@ @8 J@1 I @5 @.@8 I@1 I
@5@9 M@<C@+D A J I
 @


@6new_ge_3@8 M@ 
@8 J@1 I
 @5 @.@8 I@1 I@5@9 M@<C@,D A J I @



@6new_ge_4@8 M@ @8 J@1 I @5 @.@8 I@1 I
@5@9 M@<C@+D A J I
 I]


@6new_ge_5@8 M@ 
@8 J@1 I
 @5 @.@8 I@1 I@5@9 M@<C@+D A J I
 I]


@6new_ge_6@8 M@ @8 J@1 I @5 @.@8 I@1 I
@5@9 M@<C@<D A J I
 @


@6@ @8 J@ @1 I]@0@0@5@8 I@ @1 @@0@0@5@8 I@1 I
@5@/@8 M@1 I@1 I]@5@5@9 M@<C@?D A J	 I I]



@6@ 
@8 J@D@ @8 J@M@Q@D@ @8 J@M@Q@1 I@5@/@8 M@1 I@1 I]
@5@5@9 M@<C@6D A J I @



@6@ 
@8 J@D@ @8 J@M@Q@D@ @8 J@M@Q@1 I@1 I]
@5@5@9 M@<C@,D A J I I]



@6@ @8 J@D@ @8 J@M@Q@1 I@1 I]@5
@5@9 M@<C@+D A J I @



@6@ @8 J@1 I@5@/@8 M@1 I@1 I]@5
@5@9 M@<C@*D A J I
 @


@6@ 
@8 J@1 I
@5@/@8 M@1 I@1 I]@5@5@9 M@<C@+D A J I @



@6@ @8 J@1 I@5@/@8 M@1 I@1 I]@5
@5@9 M@<C@+D A J I
 I]


@6new_le_1@8 M@ 
@8 J@1 I
 @5 @.@8 I@1 I@5@9 M@<C@+D A J I
 I]


@6new_le_2@8 M@ @8 J@1 I @5 @.@8 I@1 I
@5@9 M@<C@,D A J I @



@6new_le_3@8 M@ @8 J@1 I @5 @.@8 I@1 I
@5@9 M@<C@+D A J I
 @


@6new_le_4@8 M@ 
@8 J@1 I
 @5 @.@8 I@1 I@5@9 M@<C@,D A J I I]



@6new_le_5@8 M@ @8 J@1 I @5 @.@8 I@1 I
@5@9 M@<C@,D A J I I]



@6new_le_6@8 M@ @8 J@1 I @5 @.@8 I@1 I
@5@9 M@<C@3D A J I
 I]


@6@ @8 J@ @1 I]@0@0@5@8 I@ @1 @@0@0@5@8 I@1 I@1 I]
@5@5@9 M@<C@3D A J I
 I]


@6@ 
@8 J@ @1 I]@0@0@5@8 I@ @1 @@0@0@5@8 I@1 I@1 I]
@5@5@9 M@<C@<D A J I
 @


@6@ @8 J@ @1 I]@0@0@5@8 I@ @1 @@0@0@5@8 I@1 I
@5@/@8 M@1 I@1 I]@5@5@9 M@<C@?D A J	 I I]



@6@ 
@8 J@D@ @8 J@M@Q@D@ @8 J@M@Q@1 I@5@/@8 M@1 I@1 I]
@5@5@9 M@<C@6D A J I @



@6@ 
@8 J@D@ @8 J@M@Q@D@ @8 J@M@Q@1 I@1 I]
@5@5@9 M@<CBD A J I I]



@6le_2@8 M@A@1 I@1 I]@5
@5@8 M@G@G@G@@Bz@A@1 I@2 @
@5@8 M@G@G@G@@B_@A@1 I@2 @
@5@8 M@G@G@G@@BD@A@!@1 I@5@/@8 M@1 I@2 I]
@5@8 M@G@G@F@@B!@AAj@ @8 J@A@!@1 E @5 @.@8 I@A
@1 I
@5@8 M@@@?@R@G@@A;@A@&@ @8 J@A@1 I]@5@/@8 M@1 I
@5@8 M@@@?@R@F@F@@A@A@&@ 
@8 J@A@1 @
@5@/@8 M@1 I@5@8 M@@@?@R@F@F@@@@A@ @U@U
@'
@A@1 I @5 @.@8 I@)
@@@?@R@G@@@@A@1 I @5 @.@8 I@1 I
@5@8 M@G@@@@A@e@)	 @1 @@5@/@8 M@A@1 I@1 I]@5
@5@8 M@F@@@@@A@1 I@1 I]@5
@5@8 M@F@@@+@A@1 I@2 @
@5@8 M@F@@@1 I@5@/@8 M@1 I@2 I]
@5@8 M@@@E@A@1 I@1 I]@.@5
@5@8 M@@@!@A@1 I@1 I]@.@5
@5@8 M@@@1 I@2 @
@.@5@8 M@ @8 J@1 I@5 @.@8 I@F@G@G@@@@A@_@ 
@8 J@A@(@1 I@.@5@/@8 M@ @8 J@1 @
@5@/@8 I@1 I@5@/@8 M@@@&@1 I@.@5@/@8 M@ @8 J@1 @
@5@/@8 I@1 I@5@/@8 M@ @ @8 K@F@@@R@D@ @8 J@M@Q@D@ 
@8 J@M@Q@A@0@U@1 I@.@5@/@8 M@1 I@5@8 K@1 I@1 I]@5
@5@/@8 M@ @ @8 K@@@?@R@F@F@F@F@F@F@<CAEEE A J	 E I



@6eq_2@8 M@A@1 E@1 I@5
@5@8 M@G@F@@A@A@@ @8 J@A@#@1 E @5 @.@8 I@A
@1 E
 @5@8 M@@@?@R@G@F@@@@A@#@1 E@5 @.@8 I@A
@1 E
@5@8 M@@@?@R@G@F@@@@A@,@1 E?@5 @.@8 I@A@1 I@5@/@8 M@1 E
@5@8 M@@@?@R@F@G@@@U@A@'@ @8 J@A@1 I@5@/@8 M@1 E
@5@8 M@@@?@R@F@G@@@,@1 E@.@5@/@8 M@1 E@5@8 K@1 E@1 I@5
@5@/@8 M@ @ @8 K@@@F@D@ @8 J@M@Q@D@ @8 J@M@Q@ 
@8 J@1 E
 @5 @.@8 I@A@U@1 E @5@8 M@@
@U@1 E @5@9 M@G@F@<C@"Ex A J E I



@6@ @8 J@1 E@1 I@5
@5@9 M@<C@*Ez A J E
 I


@6@ @8 J@ @1 I@0@0@5@8 I@1 E@1 I
@5@5@9 M@<C@*E| A J E
 I


@6@ 
@8 J@ @1 I@0@0@5@8 I@1 E@1 I
@5@5@9 M@<CBE A J	 I I



@6ineq_2@8 M@A@1 I@1 I@5
@5@8 M@G@F@@A@AA@ @8 J@A@#@1 E @5 @.@8 I@A
@1 I
 @5@8 M@@@?@R@G@F@@@@A@#@1 E@5 @.@8 I@A
@1 I
@5@8 M@@@?@R@G@F@@@@A@1@1 E
@5@/@8 M@A
@1 I @5@/@8 M@@@1 I
 @5@/@8 M@ @ @8 K@F@@@@A@,@1 E?@5 @.@8 I@A@1 I@5@/@8 M@1 I
@5@8 M@@@?@R@F@G@@@U@A@'@ @8 J@A@1 I@5@/@8 M@1 I
@5@8 M@@@?@R@F@G@@@,@1 E@.@5@/@8 M@1 E@5@8 K@1 I@1 I@5
@5@/@8 M@ @ @8 K@@@@D@ @8 J@M@Q@D@ @8 J@M@Q@ 
@8 J@A@,@1 E
 @5 @.@8 I@1 I @5@/@8 M@1 I @5@/@8 M@ @ @8 K@@@@A@L@1 I
 @5 @.@8 I@U@U@A@1 I @5@/@8 M@1 I @5@/@8 M@@@1 I @5@/@8 M@1 I @5@/@8 M@ @ @8 K@@@J@1 I 
@5 @.@8 I@U@U@A@1 I @5@/@8 M@1 I @5@/@8 M@@@1 I @5@/@8 M@1 I @5@/@8 M@ @ @9 K@F@<C@"E A J I I



@6@ @8 J@1 I@1 I@5
@5@9 M@<C@*E A J I
 I


@6@ @8 J@ @1 I@0@0@5@8 I@1 I@1 I
@5@5@9 M@<C@*E A J I
 I


@6@ 
@8 J@ @1 I@0@0@5@8 I@1 I@1 I
@5@5@9 M@<CAE A J	 I I



@6gt_2@8 M@A@1 I@1 I@5
@5@8 M@G@F@@A@AAY@ @8 J@A@#@1 E @5 @.@8 I@A
@1 I
 @5@8 M@@@?@R@G@F@@A.@A@#@1 E@5 @.@8 I@A
@1 I
@5@8 M@@@?@R@G@F@@A	@A@,@1 E?@5 @.@8 I@A@1 I@5@/@8 M@1 I
@5@8 M@@@?@R@F@G@@@@A@'@ @8 J@A@1 I@5@/@8 M@1 I
@5@8 M@@@?@R@F@G@@@@A@Y@1 I @5 @.@8 I@A@'@1 I@.@5@/@8 M@1 I@5@8 K@1 I@1 I@5
@5@/@8 M@@@1 I@.@5@/@8 M@1 I@1 I@5
@5@/@8 M@ @ @8 K@@@W@1 I @5 @.@8 I@A@'@1 I@.@5@/@8 M@1 I@5@8 K@1 I@1 I@5
@5@/@8 M@@@1 I@.@5@/@8 M@1 I@1 I@5
@5@/@8 M@ @ @8 K@@@d@D@ @8 J@M@Q@D@ @8 J@M@Q@ 
@8 J@1 I 
@5 @.@8 I@U@U@A@1 I @5@/@8 M@1 I @5@/@8 M@@@1 I @5@/@8 M@1 I @5@/@8 M@ @ @9 K@F@<C@"F
 A J I I



@6@ @8 J@1 I@1 I@5
@5@9 M@<C@*F A J I
 I


@6@ @8 J@ @1 I@0@0@5@8 I@1 I@1 I
@5@5@9 M@<C@*F A J I
 I


@6@ 
@8 J@ @1 I@0@0@5@8 I@1 I@1 I
@5@5@9 M@<CAF A J	 I I



@6lt_2@8 M@A@1 I@1 I@5
@5@8 M@G@F@@A@AAY@ @8 J@A@#@1 E @5 @.@8 I@A
@1 I
 @5@8 M@@@?@R@G@F@@A.@A@#@1 E@5 @.@8 I@A
@1 I
@5@8 M@@@?@R@G@F@@A	@A@,@1 E?@5 @.@8 I@A@1 I@5@/@8 M@1 I
@5@8 M@@@?@R@F@G@@@@A@'@ @8 J@A@1 I@5@/@8 M@1 I
@5@8 M@@@?@R@F@G@@@@A@Y@1 I @5 @.@8 I@A@'@1 I@.@5@/@8 M@1 I@5@8 K@1 I@1 I@5
@5@/@8 M@@@1 I@.@5@/@8 M@1 I@1 I@5
@5@/@8 M@ @ @8 K@@@W@1 I @5 @.@8 I@A@'@1 I@.@5@/@8 M@1 I@5@8 K@1 I@1 I@5
@5@/@8 M@@@1 I@.@5@/@8 M@1 I@1 I@5
@5@/@8 M@ @ @8 K@@@d@D@ @8 J@M@Q@D@ @8 J@M@Q@ 
@8 J@1 I
 @5 @.@8 I@U@U@A@1 I @5@/@8 M@1 I @5@/@8 M@@@1 I @5@/@8 M@1 I @5@/@8 M@ @ @9 K@F@<C@"FM A J I I



@6@ @8 J@1 I@1 I@5
@5@9 M@<C@*FN A J I
 I


@6@ @8 J@ @1 I@0@0@5@8 I@1 I@1 I
@5@5@9 M@<C@*FO A J I
 I


@6@ 
@8 J@ @1 I@0@0@5@8 I@1 I@1 I
@5@5@9 M@<CAFT A J
 I I



@6ge_3@8 M@A@1 I@1 I@5
@5@8 M@G@G@@A@AAQ@ @8 J@A@$@1 E @5 @.@8 I@A
@1 I
 @5@8 M@@@?@R@G@G@@A%@A@$@1 E@5 @.@8 I@A
@1 I
@5@8 M@@@?@R@G@G@@@@A@.@1 E?@5 @.@8 I@A@1 I@5@/@8 M@1 I
@5@8 M@@@?@R@F@G@F@@@@A@)@ @8 J@A@1 I@5@/@8 M@1 I
@5@8 M@@@?@R@F@G@F@@@@A@i@1 I @5 @.@8 I@A@)@1 I@.@5@/@8 M@1 I@5@8 K@1 I@1 I@5
@5@/@8 M@F@@@*@)	 @1 I@.@5@/@8 M@1 @@5@/@8 I@1 I@1 I@5
@5@/@8 M@ @ @8 K@@@9@1 I @5 @.@8 I@1 I@.@5@/@8 M@1 I@5@8 K@1 I@1 I@5
@5@/@8 M@ @ @8 K@F@@@f@D@ @8 J@M@Q@D@ @8 J@M@Q@ 
@8 J@1 I 
@5 @.@8 I@U@U@A@1 I @5@/@8 M@1 I @5@/@8 M@@@1 I @5@/@8 M@1 I @5@/@8 M@ @ @9 K@F@F@<C@"F A J I I



@6@ @8 J@1 I@1 I@5
@5@9 M@<C@*F A J I
 I


@6@ @8 J@ @1 I@0@0@5@8 I@1 I@1 I
@5@5@9 M@<C@*F A J I
 I


@6@ 
@8 J@ @1 I@0@0@5@8 I@1 I@1 I
@5@5@9 M@<CF A J  I I
 
@=CAF A J
 I I



@6le_3@8 M@A@1 I@1 I@5
@5@8 M@G@G@@A@AAQ@ @8 J@A@$@1 E @5 @.@8 I@A
@1 I
 @5@8 M@@@?@R@G@G@@A%@A@$@1 E@5 @.@8 I@A
@1 I
@5@8 M@@@?@R@G@G@@@@A@.@1 E?@5 @.@8 I@A@1 I@5@/@8 M@1 I
@5@8 M@@@?@R@F@G@F@@@@A@)@ @8 J@A@1 I@5@/@8 M@1 I
@5@8 M@@@?@R@F@G@F@@@@A@i@1 I @5 @.@8 I@A@)@1 I@.@5@/@8 M@1 I@5@8 K@1 I@1 I@5
@5@/@8 M@F@@@*@)	 @1 I@.@5@/@8 M@1 @@5@/@8 I@1 I@1 I@5
@5@/@8 M@ @ @8 K@@@9@1 I @5 @.@8 I@1 I@.@5@/@8 M@1 I@5@8 K@1 I@1 I@5
@5@/@8 M@ @ @8 K@F@@@f@D@ @8 J@M@Q@D@ @8 J@M@Q@ 
@8 J@1 I
 @5 @.@8 I@U@U@A@1 I @5@/@8 M@1 I @5@/@8 M@@@1 I @5@/@8 M@1 I @5@/@8 M@ @ @9 K@F@F@<C@"F A J I I



@6@ @8 J@1 I@1 I@5
@5@9 M@<C@*F A J I
 I


@6@ @8 J@ @1 I@0@0@5@8 I@1 I@1 I
@5@5@9 M@<C@*F A J I
 I


@6@ 
@8 J@ @1 I@0@0@5@8 I@1 I@1 I
@5@5@9 M@<C@hF A J E

@6eq_gen@8 M@A
@'@)
@G
@F@@@L@A@#@ @8 J@ @8 J@A@1 E@5 @.@8 I@)
@@@?@R@G
@F@@@'@1 E@.
@5@/@8 M@1 E
@5@8 K@1 E
@5@/@8 M@ @ @9 K@<C@"G A J I

@6ineq_gen_special@8 M@  @8 I@ @8 J@1 I@5@9 M@<C@"G A J I

@6ineq_gen_special2@8 M@  @8 I@ @8 J@1 I@5@9 M@<CG A J I
 @6ineq_gen_special3@8 M@1 I@1 L@5 @5@9safe_deduce B@<C@G A J
 I

@6ineq_gen@8 M@A@8@ @8 J@A@ @ @8 J@A@D@1 E@5 @.@8 I@M@Q@)
@@@?@R@@@1 I@5@8 M@G
@F@@@@A@h@A@1 E@1 I]@.
@5@5@/@8 M@@@$@A@1 E@1 I]@.
@5@5@/@8 M@@@1 E@1 @@.
@5@5@/@8 M@A@ 
@8 J@D@1 E
 @5 @.@8 I@M@Q@(@@@1 I
 @5@/@8 M@ @ @8 K@@@I@A@ @1 I@.
@5@/@8 M@1 E
@5@/@8 M@ @ @8 K@@@'@1 E@.
@5@/@8 M@1 E
@5@8 K@1 I
@5@/@8 M@ @ @9 K@<CAGJ A J I

@6gt_gen@8 M@A@2@ @8 J@A@ @8 J@A
@1 I@5 @.@8 I@@@?@R@)
@@@1 I@5@8 M@G
@F@@@@A@N@A@1 I@1 I]@.
@5@5@/@8 M@@@1 I@1 I]@.
@5@5@/@8 M@A@ 
@8 J@1 I 
@5 @.@8 I@(@@@1 I
 @5@/@8 M@ @ @8 K@@@@A@:@1 I@1 @@.
@5@5@/@8 M@A@ 
@8 J@1 I
 @5 @.@8 I@(@@@1 I
 @5@/@8 M@ @ @8 K@@@R@A@)@1 I@.
@5@/@8 M@1 I
@5@8 K@1 I
@5@/@8 M@ @ @8 K@@@'@1 I@.
@5@/@8 M@1 I
@5@8 K@1 I
@5@/@8 M@ @ @9 K@<CAGv A J I

@6lt_gen@8 M@A@2@ @8 J@A@ @8 J@A
@1 I@5 @.@8 I@@@?@R@)
@@@1 I@5@8 M@G
@F@@@@A@N@A@1 I@1 I]@.
@5@5@/@8 M@@@1 I@1 I]@.
@5@5@/@8 M@A@ 
@8 J@1 I
 @5 @.@8 I@(@@@1 I
 @5@/@8 M@ @ @8 K@@@@A@:@1 I@1 @@.
@5@5@/@8 M@A@ 
@8 J@1 I 
@5 @.@8 I@(@@@1 I
 @5@/@8 M@ @ @8 K@@@R@A@)@1 I@.
@5@/@8 M@1 I
@5@8 K@1 I
@5@/@8 M@ @ @8 K@@@'@1 I@.
@5@/@8 M@1 I
@5@8 K@1 I
@5@/@8 M@ @ @9 K@<CAG A J I

@6ge_gen@8 M@A@2@ @8 J@A@ @8 J@A@1 I@5 @.@8 I@)
@@@?@R@@@1 I@5@8 M@G
@F@@@@A@U@U@'@)
@G
@F@@@@A@N@A@1 I@1 I]@.
@5@5@/@8 M@@@1 I@1 I]@.
@5@5@/@8 M@A@ 
@8 J@1 I 
@5 @.@8 I@(@@@1 I
 @5@/@8 M@ @ @8 K@@@c@A@:@1 I@1 @@.
@5@5@/@8 M@A@ 
@8 J@1 I
 @5 @.@8 I@(@@@1 I
 @5@/@8 M@ @ @8 K@@@'@1 I@.
@5@/@8 M@1 I
@5@8 K@1 I
@5@/@8 M@ @ @9 K@<CAG A J I

@6le_gen@8 M@A@2@ @8 J@A@ @8 J@A@1 I@5 @.@8 I@)
@@@?@R@@@1 I@5@8 M@G
@F@@@@A@U@U@'@)
@G
@F@@@@A@N@A@1 I@1 I]@.
@5@5@/@8 M@@@1 I@1 I]@.
@5@5@/@8 M@A@ 
@8 J@1 I
 @5 @.@8 I@(@@@1 I
 @5@/@8 M@ @ @8 K@@@c@A@:@1 I@1 @@.
@5@5@/@8 M@A@ 
@8 J@1 I 
@5 @.@8 I@(@@@1 I
 @5@/@8 M@ @ @8 K@@@'@1 I@.
@5@/@8 M@1 I
@5@8 K@1 I
@5@/@8 M@ @ @9 K@<CH A J@6@9bitwise_deduce B@<C@9H	 A J Ibit__and



@6@ 
@1 N@0@0@5@8 I@ 
@1bit__or@0@0@5@8 I@ 
@1bit__xor@0@0@5@8 I@?@1 I
@2 N@5@9 N	@<C@9H A J I
 N


@6@ @1 N@0@0@5@8 I@ @1 N@0@0@5@8 I@ @1 N@0@0@5@8 I@?@1 I@1 N
@5@5@9 N	@<C@9H A J I N



@6@ 
@1 N@0@0@5@8 I@ 
@1 N@0@0@5@8 I@ 
@1 N@0@0@5@8 I@?@1 I
@2 N@5@9 N	@<C@9H A J I
 N


@6@ @1 N@0@0@5@8 I@ @1 N@0@0@5@8 I@ @1 N@0@0@5@8 I@?@1 I@1 N
@5@5@9 N	@<C@9H# A J I N



@6@ 
@1 N@0@0@5@8 I@ 
@1 N@0@0@5@8 I@ 
@1 N@0@0@5@8 I@?@1 I
@2 N@5@9 N	@<C@9H) A J I
 N


@6@ @1 N@0@0@5@8 I@ @1 N@0@0@5@8 I@ @1 N@0@0@5@8 I@?@1 I@1 N
@5@5@9 N	@<C@\HA A J I
 I

@6 K=@8 K>@A@ @8 J@?@1 I @5 @.@8 I@(
@@@1 I @5@/
@8 M@A@1 I@5@/@8 M@@@1 I @5@/@8 M@ 
@ @/@8 K@ @8 F @?@<C@]HT A J I I


@6 K=@8 K>@A@ @8 J@?@1 I @5 @.@8 I@(
@@@1 I @5@/
@8 M@A@1 I@5@/@8 M@@@1 I @5@/@8 M@ 
@ @/@8 K@ @8 N@?@<C@ZHg A J I
 I

@6 K=@8 K>@A@1 I@2 I@5@/
@8 M@@@1 I @5@/
@8 M@A@1 I@2 I]@5@/@8 M@@@1 I@2 I]@5@/@8 M@?@ 
@ @9 K@<C@[Hv A J I I


@6 K=@8 K>@A@1 I@2 I@5@/
@8 M@@@1 I @5@/
@8 M@A@1 I@2 I]@5@/@8 M@@@1 I@2 I]@5@/@8 M@?@ 
@ @9 K@<C@.H A J I I

 @6 K=@8 K>@A@1 I@2 I@5@8 M@@@1 I @5@8 M@?@<C@-H A J I  I

@6 K=@8 K>@A@1 I@2 I@5@8 M@@@1 I @5@8 M@?@<C@H A J I I


@6 K=@8 K>@A@1 I@5@/
@8 M@@@1 I @5@/
@8 M@A@1 I@2 I]@5@/@8 M@@@:@A@1 I@1 @@5@5@/@8 M@@@%@A@1 I@2 I]@5@/@8 M@@@1 I@1 @@5@5@/@8 M@?@ 
@ @9 K@<C@H A J I
 I

@6 K=@8 K>@A@1 I@5@/
@8 M@@@1 I @5@/
@8 M@A@1 I@2 I]@5@/@8 M@@@:@A@1 I@1 @@5@5@/@8 M@@@%@A@1 I@2 I]@5@/@8 M@@@1 I@1 @@5@5@/@8 M@?@ 
@ @9 K@<C@IH A J I I



@6 K=@8 K>@A@ 
@8 J@/@1 @
@5@8 I@@@D@ 
@8 J@M@Q@!@1 @
@5@#@1 I@1 I@5@5@9 M@<C@HH A J I
 I


@6 K=@8 K>@A@ @8 J@/@1 @@5@8 I@@@D@ @8 J@M@Q@!@1 @@5@#@1 I@1 I
@5@5@9 M@<C@GH A J I
 I


@6 K=@8 K>@A@ @8 J@/@1 I]@5@8 I@@@D@ @8 J@M@Q@!@1 I]@5@#@1 I@2 I
@5@9 M@<C@HH A J I I



@6 K=@8 K>@A@ 
@8 J@/@1 I]
@5@8 I@@@D@ 
@8 J@M@Q@!@1 I]
@5@#@1 I@2 I@5@9 M@<XP L CA A J6@6@0@/	@8get_pfs_traversal_condition M3@8hoist_pf_traversal_conditions_x B@R@<CA A J6@6@?@<XPdo_simplify_vc  C	@l A I  @6@8clear_up_old_facts  B@8try_to_prove_concs  B@8 L B@?@<C@s A I  @6Rule substitutions phase 1@8 MT@8 J! B@8 N@8 N"@?@<C@"@z A I  @6 F@8 M BRule substitutions phase 2@8 MT@8 K B@8 L BStandardise hypotheses@8 MT@8setup_hypotheses  BStandardise conclusions@8 MT@8setup_conclusions  B@8 N@8 N"@?@<C@ A I  @6@8contradiction_hunt  BExpression reduction@8 MT@8expression_reduction  B@8 N( KT@8 H_@8 N@8 N"@?@<C@ A I  @6@8 L)  B@?@<C
@ A I  @6 F@8 N%@8extended_simplify  B@8 N@8 N"@?@<C@ A I  @6@-Adding hypotheses from ground inference rules@8 MT@0@8find_max_hyp_no B@8@*add_hypotheses_from_ground_inference_rules  B@8 N@8 N"@?@<C
@ A I  @6
Proof framing@8 MT@8try_proof_framing  B@R@<C@ A I  @6@0@0@8 L BApplying proof rules@8 MT@8apply_user_defined_proof_rules  B@?@<C@ A I  @6@?@<XPeliminate_duplicates  C@/E A I@6@/@0@/	@8 J>@0@/
@8 J>@b@i@j@r@/@8 F BBduplicate of H@ @/@8 K@/
@ @8 NO@ 
@8 K@R@<XP M9 CC A J6@6@8 N"@?@9write_deadpath_message  B@<CC  A J6@6@8 N8@?@9 NQ@<CC& A J6@6@D	@8 B
 B@M	@Q@? - No dead path detected 
@8 I@?@<CC, A J6@6@+ - DPC not required for intermediate check
@8 I@?@<XP JO C@1 A K@6 Ji@8 A Jm@?@8write_dead_path B@?@<C@7 A K@6@8write_pre_hyp_part B@8write_hypotheses B@8write_pre_conc_part B@8 J&@8write_conclusions B@?@<XP MJ C@9DS A I@6@/@8 MF@/@8 L@b@g@g@r H@/
@8 JF@ 
@8
add_subst_hyp ME@A@)
 @- L)@8 @L@8 L* L-@3@#contradiction-through-substitutions@4
@5@8 J{@@@S@?@<CDd A I@6@8 Nj@?@<XPval C	F A KI
@6@8 E^@?@<XP
find_range C@3Ek A I

 J


@6@ @/@/@8covers_interval B@ 
@/@/@8 Nr@ @ @8find_max B@ @ @ @8find_min B@1 I
@5@9 K8@<XP I CE A I I]

@6@ @8 I@1 I@5@8 I@?@<CE A I @

 I@6@ @8 I@1 I@5@8 I@?@<CE A I
 @6@?@<XPleftint C@1B  A I I

@6@ @8 I@?@A@8 Mu@"	 I
@#@F@@@/@8 N{ B@1 I@5@8 M@?@<CB0 A I I

 I
@6@ @8 N}@?@<CB5 A I I]

 I]


@6@ @8 N}@ @ 
@8 N}@?@<C	B: A I
@6@8 Mu@?@<XP LH C@8D A B
@6@8 E@/@3@.
@5@8 L@ 
@8 E@ 
@8 Lrule_phase_inference@  L@1	inference@4@1 I
	@5@5@ @8record_rule_success B@?@<C@8D A B
@6@8 E@/@3@.
@5@8 L@ 
@8 E@ 
@8 L N~@  L@1 N@4@1 I
	@5@5@ @8 N@?@<C
D A B@6@8 L@?@<CD A B

@6@ @0@0@0@0@8is_a_fact_from_rule B@?@<XP Mk C@ A I@6@1 J Mg@.@5@8 J
rulefile_read@8 I@8 I@8 I@R@<C@ A I  @6@?@<XP@(substitute_and_eliminate_mark_user_rules CN A I K 

@6@8is_conc_or_hyp B K@8@!mark_whether_proved_by_user_rules B@1 
@5@8add_to_rule_summary B@?@<CN A I@6@?@<XPsplit_rational_alt_sign C@&A A L1 I 

 I@6@ @8 H@b@g@c @t@ @8 H@b@g@c @t@<C@!A A L1 

@6@ @8 H@b@g@c @t@ @8 H@b@g@c @t@<CA A L1
@6@8 H@b@h@c @t@<CA A L1 I
 I@6@ @8 H@b@g@c @t@<XP
save_join_hyp CC A I F@6@ @9 L' B@<CC A I@6@0@0@8 J>@?@<C	C A I@6@0@0@0@8 L@?@<CC A I F@6@1 L	
@5@8 @L@?@<CC A I L@6@0@8 M@?@<CC A I L@6@/
@8 I@1 JA
@5@8 @L@?@A@)
 @-@@@S@?@<XP I C
K A I@6@? @9is_in_with_pos_from B@<XPsp1 CD7 A I I]
 I
 I]
 I@6@ @8 M	@ @8 N B@?@<CD< A I I]

 I]
@6@ @8 M	@ @8 N@?@<CDA A I I]
 I]

@6@1 I]@1 I]
@5@5@8 N@?@<CDE A I I
 I
@6@9 M	@<CDH A I
@6@9 M	@<XP L C@I@+ A L1
 L

@6@/@8 I@/
@ @8 I@?@A@)
 @)@G@@@%@ 
@8 H@b@g
@c @t@q
?@?@/@1 L@5@8 L@?@1 I@5@8 I@?@<XP	simp_args C@ A I



@6@ @8is_a_valid_type B@?@ @ @ 
@8 JF@?@<C@ @ A I


@6@ @/
@8 I@?@ @ 
@ @8 JF@?@<C@"@ A I		
@6@ 
@8 N@?@ @ 
@ @8 JF@?@ @ @ @8 N B@?@<C@&@ A I		


@6@ @/@8 I@?@ @ @ @8 JF@?@ @ 
@ @8 N@?@<XPget_indentation CF A I F A@6@?@<C
F A I@6@8 M B@?@9 I@<CF A I@6@/
@8max_proof_framing_depth B@b@j@h@m @@y@ @8
create_spaces B@?@1 N	@5@8 @L@9 I@<XD  t  t t  At  L ADP N CHC A I @=XP JG C@5 A I@6@8know_norm_expr B@?@<C@8 A I@6@/@8 I@A@ @8 I@@@'
@8save_term_breakdown B@8save_norm_expr B@?@<XP NR CC2 A J6  @6 - Dead path detected 
@9 I@<XPexpression_reduction1  CDy A I  @6@9eliminate_true_hypotheses  B@<CDz A I  @6@9 M; B@<CD{ A I  @6@9 NM B@<CD} A I  @6@9 K B@<CD~ A I  @6@9 L B@<CD A I  @6@9 J8 B@<CD A I  @6@9 K# B@<CD A I  @6@9 N@<CD A I  @6@9reduce_conclusions  B@<CD A I@6@/@8 M B L-@3false-hypothesis@4@5@8 J{ L)@8 @L@9 L*@<CD A I  @6@?@<XP J C@&$[ A J 

@6@8 J@b@j@c @u@ @8 J@b@g@c @t@?@1 I
@5@9 I@<C@/$` A J I 

@6@8 J@b@j@c @t@ @8 J@b@g@c @t@?@1 @@1 I@2 I
@5@5@9 I@<XP N C@@ A I  @6@1 L@0@0@0@0@5@8 @I@0@3 J=@0@5@0@8prune_all_hyps J@@0 L>@0@8 N@0@3 J=@0@5@0@8prune_all_concs K@0 L>@0@8 N@1 L@0@0@0@0@5@8 @I@0@0@0@8prune_all_subst_hyp ME@8 L L)@8 @I@1 L@0@5@8 @I@1know_eliminated_in_subgoaling@0@0@5@8 @I@8@%prune_all_processed_hyp_with_field_op  B@8@0prune_all_processed_hyp_with_field_op_in_subgoal  B@1 LM@0@5@8 @I@8prune_all_proved_concs  K@1 N@0@0@5@8 @Iissued_contradiction_message@8 @Iissued_vc_proved_message@8 @I KT@8 @I@1known_upper_numeric_limit@0@0@0@0@5@8 @I@1known_lower_numeric_limit@0@0@0@0@5@8 @I@1 M@0@0@0@0@5@8 @I@1 M$@0@0@0@0@5@8 @Iproved_by_user_rules@8 @I@R@<C@ A I  @6@?@<XP KK CF A KI

@6@?@b@h@g@p@x@<C@ F A KI
@6@b@h@c@p@y
@ 
@ @/@8 KJ@?@b@g@h@g@p@o@x@<CF A KI
 @6@?@<XP K9 C@8 A Jh@6 Lt@0@8 J@?@0@9 K
@<C@= A Jh@6@0@9 L@<XP L C@+A A I L@6@/@3 J=@4@.@5@8 N@?@ @8save_stan_fact_x B@?@'@ @3 J=@4@5@8add_hyp_with_id J@@?@<C@+B A I K@6@/@3 J=@4@.@5@8 N@?@ @8 N@?@'@ @3 J=@4@5@8add_conc_with_id K@?@<CB
 A I@6@4HorC is not hyp or conc but is ~a in save_stan_fact.@3
@5@9 L@<XD  t  t t  At  J+ ADP	eval_list CF A KI@6@?@<CF A KI

@6@ @8 I@ @ 
@8 N B@?@<XP
setup_vc_name CB A J6@6@1vc_name@0@5@8 @I@/
@0@0@8 B NV H@/@8 C@1 N@5@8 Ci @?@<XPtry_to_prove_conc C@#F A I@6@8 M@/@8 L@8add_proved_conc K@8issue_proved_message B I@3	@4@4@4
@5@8 J{@?@R@<C@#F A I@6@0@0@/@8 L@8 N@8 N I@3	@4@4@4
@5@8 J{@?@R@<XPrewrite_rule_match C
A A B@6@U	@ @ @9rewrite_rule_match_x B@<XP Ns CEL A I J


@6@1 J
@5@ @9 Np B@<CEN A I  E




@=CEP A I  E



@=CER A I  I


 @
@=CET A I  I



 @@=C
EV A I  I



@=C
EX A I  I



@=CEZ A I  I


 I]
@=CE\ A I  I



 I]@=C
E^ A I  I



@=C
E` A I  I



@=C@)Eb A I

 J


@6@ @/@/@8 Nr@ 
@/@/@8 Nr@ @ @ @ @ @8combine_intervals B@?@<XP Mn C@ A I @6@D@1rule_syntax_error@0@0@0@5@0@8 L@M@Q@?@<C@ A I  @6syntax_error_sec@8 I@3The rule files contain the following syntax errors:@8 I@8 I@8write_syntax_errors  B@?@<XPmake_base_rational C@A A L1@6@8 I@b@h@l L@y@8 H@b@i@c @t@A
@)	@'
@G@F@@@@ @/@8 Kr@b@g@c @t@A@&@)@A@'@?@"
 	@#@@@"
 I 	@#@G
@@@O@/
@1 I@5@8 I@/@1 I	@5@8 I@A@)@?@A	@'@?@'

@@@"
 I
@#@@@A@'@?@"
 
@#@@@"
 I 
@#@?@<XP M CB A I I
 I

@6@1 I@1 I
@5@5@8 M@?@<CB A I I

 I
@6@ @8 Mu@ @8 M@?@<CB A I I]
 I]

@6@1 I]@1 I]
@5@5@8 M@?@<C@ B
 A I I]

 I]


@6@ @8 M	@ @ 
@8 M@ @8 M@?@<C	B A I
@6@8 Mu@?@<XP L CB A B@6@?@<C@!B A B I



@6@ @ 
@ @8 M B@ @ @9 L@<CB A B


@6@ @ 
@9 L@<XP
changesign C
D^ A I I

@6@?@<C	D` A I
 I@6@?@<XP I C@ A I@6@3@.@.@5@8 D@ @/
@8 N@3
@5@8 D@?@<XPlookup_fact_mappings CE A B @=CF  A B

@6 @.@0@1 L@5@0@8get_fact_from_rule B@?@ @ 
@9 O B@<CF A B

@6@/@0@0@0@0@8 O@ @0@ @8 J>@?@ @ 
@9 O@<XPprocess_next_conclusion C
A A K
$DONE@6 @8nhn B@?@9 M B@<C	A A K
 O @6@8 M@?@<CB A K@6 Jq@8renumber_conclusions Jm@0@8get_next_nhn B@/
@8 J, B@8write_next_conclusion B@?@<CB	 A K@6 Ji@8 O%@/
@8 O(@8 O,@?@<XP K C@]E A B

@6@/	@/
@/@/@/
@8 O@ @/@/@/@8promote_fact_to_hypothesis_x B@?@ @ @8convert_conditions_list B K@/@8add_hyp J@
Applied rule @ @8 MTapplied_rule@3@4	@4@4@4
@5@8 J{@?@ @ @ 
@8prune_fact_from_rule B @.@1 O@5@ 
@8add_fact_from_rule B@?@<CE A B@6 @.@0@1 O@0@5@0@8 O@?@<XPsearch_for_lower_numeric_limit C"H A J@6@1 I	@5@ @8 M@A@8 J@@@)
real@9strict_rational B@<C@>"Q A J	@6@1 I@.@5@/
@/@8 M B@D@ @8 L/ B@M@Q@1 I	@5@/@ @0@8 OF@A@8 J@@@)
 OB@8 OC@ 
@ @ @9 K@<C@_"] A J@6@1 I@.@5@/
@/@8 OF@D@ @8 OG@M@Q@1 I@.@5@/@ @/@8 OF@D@ @8 OG@M@Q@1 I	@5@/@ @0@8 OF@A@8 J@@@)
 OB@8 OC@ @ @/@8 K@ 
@ @ @9 K@<C"l A J @6@1 I@.@5@ @8 M@ @8 J@1 I]@5@9 I@<C@C"q A J	
 @6@1 I@.@5@/
@/@8 OF@D@ @8 J@M@Q@1 I@.@5@/@ @0@8 OF@ @8 J@1 I]@5@8 I@ 
@ @ @9 K@<C@C"y A J	
 @6@1 I@.@5@/
@/@8 OF@D@ @8 J@M@Q@1 I@.@5@/@ @0@8 OF@ @8 J@1 I]@5@8 I@ 
@ @ @9 K@<C@]" A J
@6@1 I@2 I]@.@.
@5@/@/@8 OF@D@ @8 OG@M@Q@A@ 
@8 J@@@)
 OB@ 
@8 OC@1 I@.@5@/@ @0@8 OF@A@ @8 J@@@)
 OB@ @8 OC@1 I]
@5@8evaluate_rational_expression B@ @ @ @9 K@<C@]" A J
@6@1 I@2 I]@.@.
@5@/@/@8 OF@D@ 
@8 OG@M@Q@A@ @8 J@@@)
 OB@ @8 OC@1 I
@.@5@/@ @0@8 OF@A@ @8 J@@@)
 OB@ @8 OC@1 I]@5@8 OH@ @ @ @9 K@<C@]" A J
@6@1 I@2 @@.@.
@5@/@/@8 OF@D@ @8 OG@M@Q@A@ 
@8 J@@@)
 OB@ 
@8 OC@1 I@.@5@/@ @0@8 OF@A@ @8 J@@@)
 OB@ @8 OC@1 @
@5@8 OH@ @ @ @9 K@<C@X" A J		 @6@1 I@1 I@.@5@.
@5@/@8 M@1 I@5 @/@8 N@ @8 J@ 
@8 J@1 I @5 @.@8 I@1 I]@1 I@1 @
@5@5@5@8 I@ @ @/@8 K@ @ @9 N@<C@X" A J		 @6@1 I@1 I@.@5@.
@5@/@8 M@1 I@5 @/@8 N@ @8 J@ 
@8 J@1 I @5 @.@8 I@1 I]@1 I@1 @
@5@5@5@8 I@ @ @/@8 K@ @ @9 N@<C@q" A J @6@1 I@1 I@1 I]@.@5@.
@5@.@5@/@8 M@ @8 J@/@1 @@5@8 I@1 I@5 @/@8 N@ 
@8 J@ @8 J@1 I
 @5 @.@8 I@1 I]@1 @@1 I@1 @@5
@5@5@5@8 I@ @ @/@8 K@ @ @9 N@<C@p" A J @6@1 I@1 I@.@2 I]@.
@5@.@5@/@8 M@ 
@8 J@/@1 @
@5@8 I@1 I@5 @/@8 N@ @8 J@ @8 J@1 I @5 @.@8 I@1 I]@1 @@1 I@1 @@5@5
@5@5@8 I@ @ @/@8 K@ @ @9 N@<C@q" A J @6@1 I@1 I@1 I]@.@5@.
@5@.@5@/@8 M@ @8 J@/@1 @@5@8 I@1 I@5 @/@8 N@ 
@8 J@ @8 J@1 I
 @5 @.@8 I@1 I]@1 @@1 I@1 @@5
@5@5@5@8 I@ @ @/@8 K@ @ @9 N@<C@p" A J @6@1 I@1 I@.@2 I]@.
@5@.@5@/@8 M@ 
@8 J@/@1 @
@5@8 I@1 I@5 @/@8 N@ @8 J@ @8 J@1 I @5 @.@8 I@1 I]@1 @@1 I@1 @@5@5
@5@5@8 I@ @ @/@8 K@ @ @9 N@<C@q" A J @6@1 I@1 I@1 @@.@5@.
@5@.@5@/@8 M@ @8 J@/@1 I]@5@8 I@1 I@5 @/@8 N@ 
@8 J@ @8 J@1 I
 @5 @.@8 I@1 I]@1 I]@1 I@1 @@5
@5@5@5@8 I@ @ @/@8 K@ @ @9 N@<C@p# A J @6@1 I@1 I@.@2 @@.
@5@.@5@/@8 M@ 
@8 J@/@1 I]
@5@8 I@1 I@5 @/@8 N@ @8 J@ @8 J@1 I @5 @.@8 I@1 I]@1 I]@1 I@1 @@5@5
@5@5@8 I@ @ @/@8 K@ @ @9 N@<C@X# A J		 @6@1 I@1 I@.@5@.
@5@/@8 M@1 I @5 @/@8 N@ @8 J@ 
@8 J@1 I @5 @.@8 I@1 I]@1 I@1 @
@5@5@5@8 I@ @ @/@8 K@ @ @9 N@<C@X#! A J		 @6@1 I@1 I@.@5@.
@5@/@8 M@1 I @5 @/@8 N@ @8 J@ 
@8 J@1 I @5 @.@8 I@1 I]@1 I@1 @
@5@5@5@8 I@ @ @/@8 K@ @ @9 N@<C@o#+ A J @6@1 I@1 I@1 I]@.@5@.
@5@.@5@/@8 M@ @8 J@/@1 I@5@8 I@1 I@5 @/@8 N@ 
@8 J@ @8 J@1 I
 @5 @.@8 I@1 I]@1 @@1 I@1 @
@5
@5@5@5@8 I@ @ @/@8 K@ @ @9 N@<C@n#7 A J @6@1 I@1 I@.@2 I]@.
@5@.@5@/@8 M@ 
@8 J@/@1 I
@5@8 I@1 I@5 @/@8 N@ @8 J@ @8 J@1 I @5 @.@8 I@1 I]@1 @@1 I@1 @@5@5
@5@5@8 I@ @ @/@8 K@ @ @9 N@<C@o#C A J @6@1 I@1 I@1 I]@.@5@.
@5@.@5@/@8 M@ @8 J@/@1 I@5@8 I@1 I@5 @/@8 N@ 
@8 J@ @8 J@1 I
 @5 @.@8 I@1 I]@1 @@1 I@1 @
@5
@5@5@5@8 I@ @ @/@8 K@ @ @9 N@<C@n#O A J @6@1 I@1 I@.@2 I]@.
@5@.@5@/@8 M@ 
@8 J@/@1 I
@5@8 I@1 I@5 @/@8 N@ @8 J@ @8 J@1 I @5 @.@8 I@1 I]@1 @@1 I@1 @@5@5
@5@5@8 I@ @ @/@8 K@ @ @9 N@<C@f#[ A J

 @6@1 I@1 I@1 @@.@5@.
@5@.@5@/@8 M@ @8 J@1 I@5 @/@8 N@ 
@8 J@ @8 J@1 I
 @5 @.@8 I@1 I]@1 I]@1 I@1 @
@5
@5@5@5@8 I@ @ @/@8 K@ @ @9 N@<C@e#f A J

 @6@1 I@1 I@.@2 @@.
@5@.@5@/@8 M@ 
@8 J@1 I
@5 @/@8 N@ @8 J@ @8 J@1 I @5 @.@8 I@1 I]@1 I]@1 I@1 @@5@5
@5@5@8 I@ @ @/@8 K@ @ @9 N@<C@9#q A J OB@6@1 I@1 I@.@5@.
@5@/@8 M@ @8 OG@ 
@8 OG@1 I @5 @.@8 I@1 
@5@8 OH@ @ @9 N@<C@9#y A J OB@6@1 I@1 I@.@5@.
@5@/@8 M@ @8 OG@ 
@8 OG@1 I @5 @.@8 I@1 
@5@8 OH@ @ @9 N@<C@G# A J OB@6@1 I@1 I@1 I]@.@5@.
@5@.@5@/@8 M@ 
@8 OG@ @8 OG@ @8 OG@1 I
 @5 @.@8 I@1 @@1 
@5@5@8 OH@ @ @9 N@<C@F# A J OB@6@1 I@1 I@.@2 I]@.
@5@.@5@/@8 M@ @8 OG@ @8 OG@ 
@8 OG@1 I @5 @.@8 I@1 @@1 @5
@5@8 OH@ @ @9 N@<C@G# A J OB@6@1 I@1 I@1 I]@.@5@.
@5@.@5@/@8 M@ 
@8 OG@ @8 OG@ @8 OG@1 I
 @5 @.@8 I@1 @@1 
@5@5@8 OH@ @ @9 N@<C@F# A J OB@6@1 I@1 I@.@2 I]@.
@5@.@5@/@8 M@ @8 OG@ @8 OG@ 
@8 OG@1 I @5 @.@8 I@1 @@1 @5
@5@8 OH@ @ @9 N@<C@G# A J OB@6@1 I@1 I@1 @@.@5@.
@5@.@5@/@8 M@ 
@8 OG@ @8 OG@ @8 OG@1 I
 @5 @.@8 I@1 I]@1 
@5@5@8 OH@ @ @9 N@<C@F# A J OB@6@1 I@1 I@.@2 @@.
@5@.@5@/@8 M@ @8 OG@ @8 OG@ 
@8 OG@1 I @5 @.@8 I@1 I]@1 @5
@5@8 OH@ @ @9 N@<XPfetch_next_pfn CHH A I@6@8pfn B@?@1 ON@0@5@8 @I@q	@1 ON	@5@8 H_@?@<XPint_enum_lit_or_const CU A J@6@A@8 J@@
@A@0 K*@8 K+@@@8 OG@?@<XPsee_if_can_infer_empty_range C@B A I	@6@A@*@1 I@.	@.
@5@/@8 M@1 J@0@5@8 @I@1 I	
@5@/@8 L@ @ @8 J@G
@F@@@V@1 I@.	@.
@5@/@8 M@D@A
@1 E	
@5@0@0@8 J>@@@1 E
	@5@0@0@8 J>@M@Q@1 J@0@5@8 @I@1 I	@.
@5@/@8 M@1 I

@5@/@8 L@ @ @/@8 J@ @ @8 J@?@<XD  t  t t  At overall_rule_summary ADP N CD A I@6 @.@0@/@8 J>true-hypothesis@8 K@R@<XP J CD? A J@6@/
@8inhibit_new_strategies B@?@A	@8safe_infer_side_conditions B@( @.@@@( D&@?@8restore_new_strategies B@?@ @@<XP L CF A I  @6@8 N  B@?@<CG A I  @6@&Proved all conclusions - VC eliminated@8 MT N@8 @L
proved_all@8 J{@?@<XP N C@CA A J6@6@/	@8restructure_formula B@/
@8@ checkvalidtraversalconditiontype B@?@A@D
@0@0@8 J>@M
@Q@? K@/@8 O5 L@ @8log_simplification B@F@@@0@/@8 J>
duplicate_hyp@3@4
@5@8 J{@F@?@<XP N  CF A I  @6@8 N"@?@<CF A I  @6@8 N8@?@<C@<F A I@6@/ K@/	@8 K@A@&
@@@A@/
@3 J=@0@5@8 K@8 I@@@/
 L>@8 K@8 I@D@8 K@M@Q@9 N B@<CF A I  @6@?@<XP I C@ F' A KI@6@A@8 H@b@h@c @u@F	@@@" I
	@#@8 H@b@i@c @t@<XP@'perform_simplification_path_functions_x C@(@ A J6@6@/
@0@0@8
get_pfs_pf M3@8tidy_up_vc_state  B@1 Jo@0@5@8 @I@1 Jo	@5@8 N@8 L B@A@8 M@@@8 M@?@R@<C@ A J6@6@?@<XPstatement_norm CG A KI
 F

 F


@6@ @ 
@8 Ow B@ @ @9 Oy@<C@*G A KI		
 J

 J


@6@ @/@8 Oy@ @/@8 Oy@ @ @ 
@ @9lower_upper B@<CG A KI
 J

 J


@6@ @ 
@8 Oy@ @ @9 Oy@<CG A KI
 I

 I


@6@ @ @8 Oy@ @ 
@9 Oy@<CG A KI	@6@?@<XP@-substitute_and_eliminate_potential_subst_fact CN& A I Jv@6@8 Jwsubstituted@3	@4
@4@4@5@8 J{@9copy_subst_facts_to_log  B@<CN+ A I J~@6@8 Jsubstituted_fld@3	@4
@4@4@5@9 J{@<XP@%perform_write_verification_conditions C	B A J6@6@8 JN@8 JS@?@<XD  t  t t  At 
max_hyp_no ADP Kn C@@ A J\

 J


@6@/
@8 Km@ @/@8 I@ @/@8 N@?@A@h@A@" I

@#@@@6@A@ 
@8 I@" I

@#@@@#@ @ @8 I@A@" I

@#@@@ 
@8 I@" I

@#@A@1 E@5@8 K8@@@ @ @8 I@1 E@5@8 K8@?@'	
@F@@@F@A@5@"
 J

@#@A@1 E@5@8 K8@@@ @ @8 I@1 E@5@8 K8@?@"	 J@#@@@"	 J
@#@G@?@<CA A J\ I

@6@/@8 Km@ @/
@8 N@ @ 
@8 K;@?@<CA	 A J\@6@?@8 I@?@<XP L" CB A J6@6 M[@8 M\@8 N B@8 O B@?@<CB A J6@6 Ma@8 M\@8 O@8 O@?@<CB A J6@6 B@8 M\@8 JL B@?@<XPform_bit_string C
F A KI  @6@?@<C
F A KI@6@?@<C@"F A KI

@6@1 I@5@8 I@/@1 I@5@8 I@?@ @ @9 O B@<XP Ly CE+ A J@6@/@8 G@ @8enum_infrule B@?@<XPtry_to_prove_subgoal_conc C@6I A I@6@A @-@0@/@8 J>@!
@3@5@#@@@/
@8 L@F@8 Nproved_subgoal@3
@4	@4
@4@4@5@8 J{@?@R@<XPsafe_subst_vbl C@ A L@6$$uniq$$@/@8 K @ @/
@8 K  O@ 
@ @8 K @?@<XPzero CD A I  @=CD A I  I @=XP I CF` A I

@6@8 I & @8 I@8 I@ @8 I@?@<CFg A I
@6@8 I@?@<CFk A I
@6@8 I, @8 I@8 I@?@ @8 I@?@<XP M CE. A B@6@T@?@R@<CE3 A B C
	
@6@8 M@?@9 M@<C
E8 A B D=
	@6@9 M@<CE; A B D=

	@6@9 M@<C
E> A B H
	@6@8novars B@9 I@<C
EB A B H
	@6@9 H@<C
EE A B I
	@6@8 O@9 I@<CEI A B I
	
@6@8 O@8@&evaluate_immediate_condition_checktype B@?@9 I@<CEO A B I
	
@6@8 O@8@%evaluate_immediate_condition_simplify B@?@9 I@<XPfetch_conclusion CA A K@6@8 K@?@R@<CA A K@6 K@/
@/@/@8fetch_complexities B K@ @ @8 L B@?@<C	A A K@6 K@8 K@?@<CA A K
 O @6@/
@8 J)@b@h@j@t@?@<XPfind_upper_numeric_limit_for C
Zz A J@6@ @8 N B@?@<C
Z~ A J@6@8 @@?@ @9calculate_known_upper_limit_for B@<CZ A J
 @6@8 J@?@<CZ A J
 OB@6@8 OG@?@<CZ A J @6@8 OG@?@9 J@<CZ A J@6@/@/
@8do_find_upper_numeric_limit_for B@1 N

@5@8 @L@ @8 O@?@<XPnegative_rational CA A L1 I
	@6@8 L2 @9 I@<XD  t  t t  At  E D  t  t t  At  E ADD  t  t t  At  E AED  t  t t  At  E 
Pconvert_condition C@(E A B I


 I


@6@ @/@8 O@ @ @/@8 K@?@ @ 
@9 N@<XPsummary_of_conclusions_rep C@"A A I 
	
@6@1rule_summary@1 	
@5@2 K@.@5@8 J O@8 I@ @8 I@R@<CA A I@6@?@<XPbuilt_in C
E A I  A#   @=C
E A I  @k   @=C
E A I  I   @=C
E A I  I   @=C
E A I     @=C
E A I  I   @=C
E A I  I   @=C
E A I  @k  @=C
E A I   OB OB OB@=C
E A I  L  @=C
E A I sqr  @=C
E A I  CANY O H@=C
E A I  I O O H@=C
E A I  H O O H@=C
E A I  H O O H@=C
E A I  E O O H@=C
E A I  I O O H@=C
E A I  Ii H H@=C
E A I  J H H H@=C
E A I  J H H H@=C
E A I  F H H H@=C
E A I  JY H H H@=C
E A I odd  H@=C
E A I  C O O@=C
E A I  F O O@=C
E A I  G O @=C
E A I  I? O O@=C
E A I  B O O@=C
F  A I  K O O@=C
F A I  K O O@=C
F A I  D O O O@=C
F A I  J O O O@=C
F A I  J O O O@=C
F A I   O O O@=C
F A I  J O O H@=C
F A I  J O O H@=C
F A I  J O O H@=C
F	 A I  J O O H@=C
F
 A I  H O O O@=XPorder CC A I
@6@?@R@<C	C A I
@6@?@R@<CC A I@6@?@<CC A I@6@?@<CC A I


@6@?@ @ @8 O B@?@<CC A I

@6@8 I@ @8 I@?@b@j@g@r@<CC A I

@6@ @8order_terms B@?@<XP O C@)@ A K@6 K@8 L@A
 J=@ @8 L@@@)@?@A
 L>@ @8 L@@@)@?@<XD  t  t t  At max_written_conc_no ADPset_simplify C@A A J\ J

@6@/@8 O B@ @/
@8 O@A@'
@?@'	@G@G@F@@@d@A@.@" J
@#@"
 J
@#@ @ @/@8 K@ @/@8
simp_set_list B@ @/@8 N@"	 J@#@@@4@A@1 J
@5@8 K8@?@'	
@@@A@1 J
@5@8 K8@?@'	@@
@"	 J
@#@G@G@F@?@<C@mA A J\ J

@6@/@8 O@ @/
@8 O@A@'
@?@'	@G@@@J@A@" J
@#@"
 J
@#@ @ @8make_intersection B@@@/@A@1 J
@5@8 K8@?@'	@@@A@1 J
@5@8 K8@?@'	
@@
@"	 J
@#@G@?@<C@uA A J\ J

@6@/@8 O@ @/
@8 O@A@'
@?@"	 J@#@G@@@N@A@"
 J@#@'	@G@@@=@A@" J
@#@"
 J
@#@ @ @8make_difference B@@@"@A@1 J
@5@8 K8@?@"	 J@#@@
@"	 J
@#@G@?@<C@A A J\ J

@6@/@8 O@ @/
@8 O@A@@A@'
@G@G@G@@@@A@" J@#@G@G@G@@@@A@,@"
 J

@#@A
@1 J@5 @.@8 O@@@1 J@5 @.@8 O@G@G@@@c@A@" J

@#@1 J
@5 @.@8 O@G@@@D@A@)@" J

@#@A
@1 J
@5 @.@8 O@@@1 J
@5 @.@8 O@G@@@" J
@#@"
 J
@#@ @ @8 J@G@G@)	 @.@@@"	 J
@#@G@G@G@?@<C@?A A J\ J

@6@/@8 O@ @/
@8 O@A@" J
@#@"
 J
@#@ @ @8 J@)	 @.@@
@"	 J
@#@G@?@<C@EA A J\ J

@6@/@8 I@ @/
@8 O@A@$@"
 J@#@A@1 J
@5@8 K8@)	 @.@@@1 J
@5@8 K8@)	 @-@@
@"	 J
@#@?@<C@EB A J\ J

@6@/@8 I@ @/
@8 O@A@$@"
 J@#@A@1 J
@5@8 K8@)	 @.@@@1 J
@5@8 K8@)	 @-@@
@"	 J
@#@?@<C@)B A J\ E

@6@/@8 O@ @/
@8 O@A@'
@)	 @.@@
@"	 E
@#@?@<C@EB  A J\ I

@6@1 E
@5@/@8 O@A@) @.@)	 @-@G
@@@#@A@" E


@#@"	 I
@#@@@"	 Ij@#@G
@?@<CB, A J\ J
 J
@6@/@8 O@ @ @8 N@?@<C@*B1 A J\@6@A
@8 @@'	@G
@F@@@3@.
@.@5@8 D@ @/@8 N@3
@5@8 D@?@<XP Kv CA A B L@6@9 L@<CA A B L@6@9 L@<XP@#decrement_inference_depth_remaining C@#D A J@6@/	@8 J@b@i@c @t@?@1 J@0@5@8 @I@?@q
	?@1 J
@5@9 H_@<XP LC CB A I L@6@/ L>@8 N@?@'@  L>@8 N@?@<CB" A I K@6@/ L>@8 N@?@'@  L>@8 N@?@<CB) A I@6@9HorC is not hyp or conc but is ~a in save_semi_stan_fact.@3
@5@9 L@<XP@+determine_facts_and_promote_to_hypotheses_x CE A B  N
 N


@=CE A B rewrite



 O
@=XP L| CEh A J@6@1 J@0@5@8 @I@/	@8 J@?@9unbuffer_the_used_facts B@<XP M C@ A J@6@9 K
@<C@&@ A J E

@6@1 I
@5@/@8 K
@1 I
@5@/
@8 K
@ @ 
@9 K@<C@!@ A J I

@6@A@1 I
@5@8 K
@@
@1 I
@5@9 K
@<C@&@ A J I

@6@1 I
@5@/@8 K
@1 I
@5@/
@8 K
@ @ 
@9 K@<C@&@ A J I

@6@1 I
@5@/@8 K
@1 I
@5@/
@8 K
@ @ 
@9 K@<C@*@ A J I

@6@A@1 E
@5@8 K
@1 E
@5@8 K@@
@1 I
@5@9 K
@<C@*@ A J I

@6@A@1 E
@5@8 K
@1 E
@5@8 K@@
@1 I
@5@9 K
@<C@(@ A J I

@6@D
@8 J@M
@Q@ @8 J@/@0@8 O@1 I@5 @.@9 I@<C@)@ A J I

@6@D
@ @8 J@M
@Q@8 J@ @/@0@8 N B@1 I
@5 @.@9 I@<XPtry_new_numeric_strategies C@!U< A J I

@6@ @8 OG@ @/
@8 O B@1 I
@5 @.@8 I@?@<C@!UB A J I

@6@ @8 OG@ @/
@8find_lower_numeric_limit_for B@1 I
@5 @.@8 I@?@<C@!UH A J I

@6@ @8 OG@ @/
@8 O@1 I
@5 @.@8 I@?@<C@!UN A J I

@6@ @8 OG@ @/
@8 O@1 I
@5 @.@8 I@?@<C@!UT A J I

@6@ @8 OG@ @/
@8 O@1 I
@5 @.@8 I@?@<C@!UZ A J I

@6@ @8 OG@ @/
@8 O@1 I
@5 @.@8 I@?@<C@!U` A J I

@6@ @8 OG@ @/
@8 O@1 I
@5 @.@8 I@?@<C@!Uf A J I

@6@ @8 OG@ @/
@8 O@1 I
@5 @.@8 I@?@<C@<Uo A J I

@6@ @8 OG@A@ @/
@8 O@1 I
@5 @.@8 I@F@@@ @/@8 O@1 I@5 @.@8 I@F
@?@<C@<Uz A J I

@6@ @8 OG@A@ @/
@8 O@1 I
@5 @.@8 I@F@@@ @/@8 O@1 I@5 @.@8 I@F
@?@<C@GU A J I I]

 I]


@6@ @8 OG@ @/@/@8 O@1 @@5@/@8 OH@1 I@2 I]
@5@/@8 N@ @ @/@8 K@ @9 N@<C@GU A J I I]

 I]


@6@ 
@8 OG@ @/@/@8 O@1 @
@5@/@8 OH@1 I@2 I]@5@/@8 N@ @ @/@8 K@ @9 N@<C@GU A J I I]

 I]


@6@ @8 OG@ @/@/@8 O@1 @@5@/@8 OH@1 I@2 I]
@5@/@8 N@ @ @/@8 K@ @9 N@<C@GU A J I I]

 I]


@6@ 
@8 OG@ @/@/@8 O@1 @
@5@/@8 OH@1 I@2 I]@5@/@8 N@ @ @/@8 K@ @9 N@<C@GU A J I I]

 I]


@6@ @8 OG@ 
@/@/@8 O@1 @@5@/@8 OH@1 I@2 I]@5@/@8 N@ @ @/@8 K@ @9 N@<C@GU A J I I]

 I]


@6@ @8 OG@ 
@/@/@8 O@1 @@5@/@8 OH@1 I@2 I]@5@/@8 N@ @ @/@8 K@ @9 N@<C@GU A J I I]

 I]


@6@ @8 OG@ @/@/@8 O@1 @@5@/@8 OH@1 I
@2 I]@5@/@8 N@ @ @/@8 K@ @9 N@<C@GU A J I I]

 I]


@6@ @8 OG@ @/@/@8 O@1 @@5@/@8 OH@1 I
@2 I]@5@/@8 N@ @ @/@8 K@ @9 N@<C@HU A J I I]

 I]


@6@ @8 OG@ 
@/@/@8 O@1 @@5@/@8 OH@1 I@1 I]@5@5@/@8 N@ @ @/@8 K@ @9 N@<C@HU A J I I]

 I]


@6@ @8 OG@ 
@/@/@8 O@1 @@5@/@8 OH@1 I@1 I]@5@5@/@8 N@ @ @/@8 K@ @9 N@<C@HU A J I I]

 I]


@6@ @8 OG@ @/@/@8 O@1 @@5@/@8 OH@1 I@1 I]@5
@5@/@8 N@ @ @/@8 K@ @9 N@<C@HU A J I I]

 I]


@6@ @8 OG@ @/@/@8 O@1 @@5@/@8 OH@1 I@1 I]@5
@5@/@8 N@ @ @/@8 K@ @9 N@<C@HU A J I I]

 I]


@6@ @8 OG@ @/@/@8 O@1 @@5@/@8 OH@1 I@1 I]
@5@5@/@8 N@ @ @/@8 K@ @9 N@<C@HU A J I I]

 I]


@6@ 
@8 OG@ @/@/@8 O@1 @
@5@/@8 OH@1 I@1 I]@5@5@/@8 N@ @ @/@8 K@ @9 N@<C@HU A J I I]

 I]


@6@ @8 OG@ @/@/@8 O@1 @@5@/@8 OH@1 I@1 I]
@5@5@/@8 N@ @ @/@8 K@ @9 N@<C@HV A J I I]

 I]


@6@ 
@8 OG@ @/@/@8 O@1 @
@5@/@8 OH@1 I@1 I]@5@5@/@8 N@ @ @/@8 K@ @9 N@<CV A J E I]

 I]

@6 C@ @ 
@9 J@<CV A J E I]

 I]

@6 C@ @ 
@9 J@<CV A J E I]

 I]

@6 C@ @ 
@9 J@<CV A J E I]

 I]

@6 C@ @ 
@9 J@<CV A J I I]

 I]

@6 I@ @ 
@9 J@<CV  A J I I]

 I]

@6 I@ @ 
@9 J@<CV# A J I I]

 I]

@6 I@ @ 
@9 J@<CV& A J I I]

 I]

@6 I@ @ 
@9 J@<CV) A J I I]

 I]

@6 I@ @ 
@9 J@<CV, A J I I]

 I]

@6 I@ @ 
@9 J@<CV/ A J I I]

 I]

@6 I@ @ 
@9 J@<CV2 A J I I]

 I]

@6 I@ @ 
@9 J@<CV5 A J I I]

 I]

@6 E@ @ 
@9 J@<CV8 A J I I]

 I]

@6 E@ @ 
@9 J@<CV; A J I I]

 I]

@6 E@ @ 
@9 J@<CV> A J I I]

 I]

@6 E@ @ 
@9 J@<CVA A J I I]

 I]

@6 H@ @ 
@9 J@<CVD A J I I]

 I]

@6 H@ @ 
@9 J@<CVG A J I I]

 I]

@6 H@ @ 
@9 J@<CVJ A J I I]

 I]

@6 H@ @ 
@9 J@<CVM A J I I]

 I]

@6 H@ @ 
@9 J@<CVP A J I I]

 I]

@6 H@ @ 
@9 J@<CVS A J I I]

 I]

@6 H@ @ 
@9 J@<CVV A J I I]

 I]

@6 H@ @ 
@9 J@<CV[ A J E @

 @

@6 C@ @ 
@9 J@<CV^ A J E @

 @

@6 C@ 
@ @9 J@<CVa A J I @

 @

@6 I@ @ 
@9 J@<CVd A J I @

 @

@6 I@ 
@ @9 J@<CVg A J I @

 @

@6 I@ @ 
@9 J@<CVj A J I @

 @

@6 I@ 
@ @9 J@<CVm A J I @

 @

@6 E@ @ 
@9 J@<CVp A J I @

 @

@6 E@ 
@ @9 J@<CVs A J I @

 @

@6 H@ @ 
@9 J@<CVv A J I @

 @

@6 H@ 
@ @9 J@<CVy A J I @

 @

@6 H@ @ 
@9 J@<CV| A J I @

 @

@6 H@ 
@ @9 J@<C@9V A J E I

 I

@6@ @8 OG@?@A	@) @?@)
@@@1 I @5 @.@8 I@? C@ @ 
@8 J@?@<C@9V A J E I

 I

@6@ @8 OG@?@A	@) @?@)
@@@1 I @5 @.@8 I@? C@ @ 
@8 J@?@<C@9V A J E I

 I

@6@ @8 OG@?@A	@) @?@)
@@@1 I @5 @.@8 I@? C@ @ 
@8 J@?@<C@9V A J E I

 I

@6@ @8 OG@?@A	@) @?@)
@@@1 I @5 @.@8 I@? C@ @ 
@8 J@?@<C@.V A J E
 I
@6@ @8 OG@A@1 E@5 @.@8 I@)
@@
 C@  @8 J@?@<C@/V A J E I

@6@ @8 OG@A@1 E@5 @.@8 I@)
@@
 C@  @8 J@?@<C@.V A J E
 I
@6@ @8 OG@A@1 E@5 @.@8 I@)
@@
 C@  @8 J@?@<C@/V A J E I

@6@ @8 OG@A@1 E@5 @.@8 I@)
@@
 C@  @8 J@?@<C@7V A J I I

 I

@6@ @8 OG@?@A@) @?@R@@@1 I @5 @.@8 I@? I@ @ 
@8 J@?@<C@7V A J I I

 I

@6@ @8 OG@?@A@) @?@R@@@1 I @5 @.@8 I@? I@ @ 
@8 J@?@<C@7V A J I I

 I

@6@ @8 OG@?@A@) @?@R@@@1 I @5 @.@8 I@? I@ @ 
@8 J@?@<C@7W A J I I

 I

@6@ @8 OG@?@A@) @?@R@@@1 I @5 @.@8 I@? I@ @ 
@8 J@?@<C@SW A J I I

 I

@6@ @8 OG@?@A	@) @?@)
@@@0@A@1 I @5 @.@8 I@? I@ @ 
@8 J@@@1 I @5 @.@8 I@? I@ 
@ @8 J@?@<C@SW+ A J I I

 I

@6@ @8 OG@?@A	@) @?@)
@@@0@A@1 I @5 @.@8 I@? I@ @ 
@8 J@@@1 I @5 @.@8 I@? I@ 
@ @8 J@?@<C@SW= A J I I

 I

@6@ @8 OG@?@A	@) @?@)
@@@0@A@1 I @5 @.@8 I@? I@ @ 
@8 J@@@1 I @5 @.@8 I@? I@ 
@ @8 J@?@<C@SWO A J I I

 I

@6@ @8 OG@?@A	@) @?@)
@@@0@A@1 I @5 @.@8 I@? I@ @ 
@8 J@@@1 I @5 @.@8 I@? I@ 
@ @8 J@?@<C@SWa A J I I

 I

@6@ @8 OG@?@A	@) @?@)
@@@0@A@1 I @5 @.@8 I@? E@ @ 
@8 J@@@1 I @5 @.@8 I@? E@ 
@ @8 J@?@<C@SWs A J I I

 I

@6@ @8 OG@?@A	@) @?@)
@@@0@A@1 I @5 @.@8 I@? E@ @ 
@8 J@@@1 I @5 @.@8 I@? E@ 
@ @8 J@?@<C@SW A J I I

 I

@6@ @8 OG@?@A	@) @?@)
@@@0@A@1 I @5 @.@8 I@? E@ @ 
@8 J@@@1 I @5 @.@8 I@? E@ 
@ @8 J@?@<C@SW A J I I

 I

@6@ @8 OG@?@A	@) @?@)
@@@0@A@1 I @5 @.@8 I@? E@ @ 
@8 J@@@1 I @5 @.@8 I@? E@ 
@ @8 J@?@<C@QW A J I I

 I

@6@ @8 OG@?@A@) @?@R@@@0@A@1 I @5 @.@8 I@? H@ @ 
@8 J@@@1 I @5 @.@8 I@? H@ 
@ @8 J@?@<C@QW A J I I

 I

@6@ @8 OG@?@A@) @?@R@@@0@A@1 I @5 @.@8 I@? H@ @ 
@8 J@@@1 I @5 @.@8 I@? H@ 
@ @8 J@?@<C@QW A J I I

 I

@6@ @8 OG@?@A@) @?@R@@@0@A@1 I @5 @.@8 I@? H@ @ 
@8 J@@@1 I @5 @.@8 I@? H@ 
@ @8 J@?@<C@QW A J I I

 I

@6@ @8 OG@?@A@) @?@R@@@0@A@1 I @5 @.@8 I@? H@ @ 
@8 J@@@1 I @5 @.@8 I@? H@ 
@ @8 J@?@<C@QW A J I I

 I

@6@ @8 OG@?@A@) @?@R@@@0@A@1 I @5 @.@8 I@? H@ @ 
@8 J@@@1 I @5 @.@8 I@? H@ 
@ @8 J@?@<C@QX A J I I

 I

@6@ @8 OG@?@A@) @?@R@@@0@A@1 I @5 @.@8 I@? H@ @ 
@8 J@@@1 I @5 @.@8 I@? H@ 
@ @8 J@?@<C@QX A J I I

 I

@6@ @8 OG@?@A@) @?@R@@@0@A@1 I @5 @.@8 I@? H@ @ 
@8 J@@@1 I @5 @.@8 I@? H@ 
@ @8 J@?@<C@QX' A J I I

 I

@6@ @8 OG@?@A@) @?@R@@@0@A@1 I @5 @.@8 I@? H@ @ 
@8 J@@@1 I @5 @.@8 I@? H@ 
@ @8 J@?@<C@,X; A J E I

 I

@6@A
@1 E @5@8 N@@
 C@ @ 
@8 J@?@<C@,XC A J E I

 I

@6@A
@1 E @5@8 N@@
 C@ @ 
@8 J@?@<C@,XK A J E I

 I

@6@A
@1 E @5@8 N@@
 C@ @ 
@8 J@?@<C@,XS A J E I

 I

@6@A
@1 E @5@8 N@@
 C@ @ 
@8 J@?@<C@LX[ A J		 I I

 I

@6@A@1 I @5@/@8 N@? I@ @ 
@/@8 J@@@1 E @5@8 N@?@R@G@ @ @/@8 K@ @8 N@?@<C@LXi A J		 I I

 I

@6@A@1 I @5@/@8 N@? I@ @ 
@/@8 J@@@1 E @5@8 N@?@R@G@ @ @/@8 K@ @8 N@?@<C@LXw A J		 I I

 I

@6@A@1 I @5@/@8 N@? I@ @ 
@/@8 J@@@1 E @5@8 N@?@R@G@ @ @/@8 K@ @8 N@?@<C@LX A J		 I I

 I

@6@A@1 I @5@/@8 N@? I@ @ 
@/@8 J@@@1 E @5@8 N@?@R@G@ @ @/@8 K@ @8 N@?@<C@hX A J		 I I

 I

@6@A@1 E @5@/@8 N@?@(@@@4@A@1 I @5@/@8 N@? I@ @ 
@/@8 J@@@1 I @5@/@8 N@? I@ 
@ @/@8 J@ @ @/@8 K@ @8 N@?@<C@hX A J		 I I

 I

@6@A@1 E @5@/@8 N@?@(@@@4@A@1 I @5@/@8 N@? I@ @ 
@/@8 J@@@1 I @5@/@8 N@? I@ 
@ @/@8 J@ @ @/@8 K@ @8 N@?@<C@hX A J		 I I

 I

@6@A@1 E @5@/@8 N@?@(@@@4@A@1 I @5@/@8 N@? I@ @ 
@/@8 J@@@1 I @5@/@8 N@? I@ 
@ @/@8 J@ @ @/@8 K@ @8 N@?@<C@hX A J		 I I

 I

@6@A@1 E @5@/@8 N@?@(@@@4@A@1 I @5@/@8 N@? I@ @ 
@/@8 J@@@1 I @5@/@8 N@? I@ 
@ @/@8 J@ @ @/@8 K@ @8 N@?@<C@hX A J		 I I

 I

@6@A@1 E @5@/@8 N@?@(@@@4@A@1 I @5@/@8 N@? E@ @ 
@/@8 J@@@1 I @5@/@8 N@? E@ 
@ @/@8 J@ @ @/@8 K@ @8 N@?@<C@hX A J		 I I

 I

@6@A@1 E @5@/@8 N@?@(@@@4@A@1 I @5@/@8 N@? E@ @ 
@/@8 J@@@1 I @5@/@8 N@? E@ 
@ @/@8 J@ @ @/@8 K@ @8 N@?@<C@hX A J		 I I

 I

@6@A@1 E @5@/@8 N@?@(@@@4@A@1 I @5@/@8 N@? E@ @ 
@/@8 J@@@1 I @5@/@8 N@? E@ 
@ @/@8 J@ @ @/@8 K@ @8 N@?@<C@hY A J		 I I

 I

@6@A@1 E @5@/@8 N@?@(@@@4@A@1 I @5@/@8 N@? E@ @ 
@/@8 J@@@1 I @5@/@8 N@? E@ 
@ @/@8 J@ @ @/@8 K@ @8 N@?@<C@hY# A J		 I I

 I

@6@A@1 E @5@/@8 N@?@R@F@@@4@A@1 I @5@/@8 N@? H@ @ 
@/@8 J@@@1 I @5@/@8 N@? H@ 
@ @/@8 J@ @ @/@8 K@ @8 N@?@<C@hY5 A J		 I I

 I

@6@A@1 E @5@/@8 N@?@R@F@@@4@A@1 I @5@/@8 N@? H@ @ 
@/@8 J@@@1 I @5@/@8 N@? H@ 
@ @/@8 J@ @ @/@8 K@ @8 N@?@<C@hYG A J		 I I

 I

@6@A@1 E @5@/@8 N@?@R@F@@@4@A@1 I @5@/@8 N@? H@ @ 
@/@8 J@@@1 I @5@/@8 N@? H@ 
@ @/@8 J@ @ @/@8 K@ @8 N@?@<C@hYY A J		 I I

 I

@6@A@1 E @5@/@8 N@?@R@F@@@4@A@1 I @5@/@8 N@? H@ @ 
@/@8 J@@@1 I @5@/@8 N@? H@ 
@ @/@8 J@ @ @/@8 K@ @8 N@?@<C@hYk A J		 I I

 I

@6@A@1 E @5@/@8 N@?@R@F@@@4@A@1 I @5@/@8 N@? H@ @ 
@/@8 J@@@1 I @5@/@8 N@? H@ 
@ @/@8 J@ @ @/@8 K@ @8 N@?@<C@hY} A J		 I I

 I

@6@A@1 E @5@/@8 N@?@R@F@@@4@A@1 I @5@/@8 N@? H@ @ 
@/@8 J@@@1 I @5@/@8 N@? H@ 
@ @/@8 J@ @ @/@8 K@ @8 N@?@<C@hY A J		 I I

 I

@6@A@1 E @5@/@8 N@?@R@F@@@4@A@1 I @5@/@8 N@? H@ @ 
@/@8 J@@@1 I @5@/@8 N@? H@ 
@ @/@8 J@ @ @/@8 K@ @8 N@?@<C@hY A J		 I I

 I

@6@A@1 E @5@/@8 N@?@R@F@@@4@A@1 I @5@/@8 N@? H@ @ 
@/@8 J@@@1 I @5@/@8 N@? H@ 
@ @/@8 J@ @ @/@8 K@ @8 N@?@<C@0Y A J E I

 I

 @6@ @8 J@1 E @5 @-@8 I@?@1 E
@5 @9 N@<C@0Y A J I I

 I

 @6@ @8 J@1 I @5 @.@8 I@?@1 I
@5 @9 N@<C@0Y A J I I

 I

 @6@ @8 J@1 I @5 @.@8 I@?@1 I
@5 @9 N@<C@0Y A J I I

 I

 @6@ @8 J@1 I @5 @.@8 I@?@1 I
@5 @9 N@<C@0Y A J I I

 I

 @6@ @8 J@1 I @5 @.@8 I@?@1 I
@5 @9 N@<C@tY A J

 E

 @6@ @8 J@?@A@1 I@5 @/
@8
strict_deduce B@F@@@/@1 @@5@8 I@1 I@5 @/
@8 O@A@1 I@5 @/@8 O@F@@@/@1 I]@5@8 I@1 I@5 @/@8 O@?@ 
@ @/@8 K@ @9 N@<C@tY A J

 E

 @6@ @8 J@?@A@1 I@5 @/
@8 O@F@@@/@1 @@5@8 I@1 I@5 @/
@8 O@A@1 I@5 @/@8 O@F@@@/@1 I]@5@8 I@1 I@5 @/@8 O@?@ 
@ @/@8 K@ @9 N@<C@hY A J I I]

 @6@A@1 I@5 @/
@8 O@@@1 I@1 I]@5@5 @/
@8 O@A@1 I@1 I]@5@5 @/@8 O@@@1 I@2 @@5 @/@8 O@?@ 
@ @/@8 K@ @9 N@<C@fZ
 A J I
 @
 @6@A@1 I@5 @/
@8 O@@@1 I@2 @@5 @/
@8 O@A@1 I@2 @@5 @/@8 O@@@1 I@1 I]@5@5 @/@8 O@?@ 
@ @/@8 K@ @9 N@<C@gZ A J I
 I]
 @6@A@1 I@5 @/
@8 O@@@1 I@1 I]@5@5 @/
@8 O@A@1 I@1 I]@5@5 @/@8 O@@@1 I@2 @@5 @/@8 O@?@ 
@ @/@8 K@ @9 N@<C@gZ+ A J I @

 @6@A@1 I@5 @/
@8 O@@@1 I@2 @@5 @/
@8 O@A@1 I@2 @@5 @/@8 O@@@1 I@1 I]@5@5 @/@8 O@?@ 
@ @/@8 K@ @9 N@<C@Z= A J
 I

 @6@D@ @8 J@M@Q@D@ @8 J@M@Q@A@1 I@2 I]@5 @/
@8 O@@@=@A@1 I@1 @@5@5 @/
@8 O@@@'@A@1 I@2 I]@5 @/
@8 O@@@1 I@1 @@5@5 @/
@8 O@?@A@1 I@2 I]@5 @/@8 O@@@1 I@1 @@5@5 @/@8 O@?@ 
@ @/@8 K@ @9 N@<C@kZS A J
 I

 @6@D@ @8 J@M@Q@ @8 J@1 I]@5@/
@8 I@A@1 I
@5 @/@8 O@F@@@1 I]@5@/@8 I@1 I@5 @/@8 O@?@1 I
@5 @/@8 O@?@ @ @/@8 K@ @9 N@<C@kZc A J
 I

 @6@ @8 J@D@ @8 J@M@Q@1 @@5@/
@8 I@A@1 I
@5 @/@8 O@F@@@1 @@5@/@8 I@1 I@5 @/@8 O@?@1 I
@5 @/@8 O@?@ @ @/@8 K@ @9 N@<XPrational_expression C@ A L1@6@T@?@R@<C@ A L1@6@8 H@?@<C@ A L1 I
	@6@?@9 O B@<CA  A L1 L
	@6@?@9 O@<CA A L1 I]
	
@6@?@8 O@?@9 O@<CA A L1 @
	
@6@?@8 O@?@9 O@<CA A L1 I
	
@6@?@8 O@?@9 O@<CA A L1 
	
@6@?@8 O@?@9 O@<CA A L1 L
	
@6@?@8 O@?@9 I@<XP@$safe_deduce_in_logical_strategies_xx C
% A J@6@8 K
@8 O\@?@<C% A J@6@8 O\@?@R@<XP I CA* A I@6@8 H@b@h@c @u@?@<CA, A I I
	@6@8 H@b@i@c @u@?@<XPrecord_any_proved_conclusions  C@/@ A B@6udr9@8 M@/ K@/	@8 K@D@8 K@M@Q@0@/
@/@/@/
@8 N@ @ @ 
@8@!record_conclusion_proved_by_rules B@R@<C@ A B  @6@?@<XP K! C	@ A L
@6@T
@?@<C	@ A L	@6@?@<C
@ A L
@6@8 E^@?@<C@ @ A L J]


 J]
@6@ @8 E^@?@ 
@ @8 K @?@<C@ A L@6@3@.@.
@5@8 D@ 
@/@8subst_vbl_list B@ @3@5@8 D@?@<XP L3 C
A A L1@6@8 H@b@h@c @u@<CA A L1 
	
@6@8 H@b@i@c @u@8 H@b@j@c@t@9 Kr@<XPdoes_not_typecheck_as_boolean C	E! A B@6 H@8checkhastype B@?@R@<CE& A B @=XPadd_to_overall_summary CA A I@6@/	@8 Jn@D
@8 OT B@M
@Q@?@1 O	@5@9 @L@<CA A I@6@?@<XP I C@ A I@6@/@/@8 EW@A@ @8function I@@@ @8 O B@ @8 G@?@<XPnoisily_add_new_hyp_list CM A I @.
@6@?@ @9 P B@<CM A I@6@ @0@0@8 J>@?@ @9 P@<C@&M A Iordinary@6@  K@/
@8 O5new_hyp@3
@4@4
@5@8 J{@?@  P@9 P@<C@/M A Iby_cases

@6@  K@/@8 O5new_hyp_for_case@3@4@4
@4
@5@8 J{@?@ @1 P
@5@9 P@<CM A I @=XP	orderargs CC_ A I


@6@?@ @ @8 P
 B@?@<CCd A I

@6 @8 I@  @8 I@?@ @8order_exprs B@?@<CCk A I

@6@?@ @9 H @<XP N CFp A I@6@1 N	@5@8 @L@?@<XP
curtailType_x CJ A I @=CJ A I 

@=CJ A I 


@=CJ A I 



@=XP O C	Bt A J\
 J@6@?@<C
Bu A J\
 J@6@?@<CBv A J\ J
@6@/@8mk_diff B@ @ @8 N@?@<XPtry_further_conc_simplification C@MG A I@6@/
@/@8eliminate_redundant_moduluses B@/@8 I@?@0 K@ @8replace_conc Kfurther_simplified@3 K@4	@4@4@4@5@8 J{@?@A@) @. I@3	@4@4@4@5@8 J{@8 N@8 N@@@S@?@<XP Jc CAl A J\ K

@6@8 Jb@ @8 Jb@?@<C@$Aq A J\..

@6@?@A@1 I	
@5@8 K8@@	@1 I	@5@8 K8@?@<CAz A J\
@6@1 I
	@5@8 K8@?@<XP K CE A J@6@9 K
@<C@/E A J E

@6@1 E
@.@5@/
@8 K
@1 E
@5@8 K@1 E@5@/@8 K@ 
@ @9 J@<C@/E A J I

@6@1 E
@.@5@/
@8 K
@1 E
@5@8 K@1 I@5@/@8 K@ 
@ @9 J@<C@&E  A J I

@6@1 I
@.@5@/
@8 K                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               