/usr/lib/jvm/java-1.11.0-openjdk-amd64/bin/java -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data -s ../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Bitvector.epf -tc ../../../trunk/examples/toolchains/AutomizerCInline.xml -i ../../../trunk/examples/svcomp/seq-mthreaded/rekcba_aso.1.M4-2.c -------------------------------------------------------------------------------- This is Ultimate 0.2.4-tmp.fs.bitabs-eval-d9c3e40-m [2023-12-25 08:05:34,773 INFO L188 SettingsManager]: Resetting all preferences to default values... [2023-12-25 08:05:34,837 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Bitvector.epf [2023-12-25 08:05:34,840 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2023-12-25 08:05:34,840 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2023-12-25 08:05:34,854 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2023-12-25 08:05:34,854 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2023-12-25 08:05:34,855 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2023-12-25 08:05:34,855 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2023-12-25 08:05:34,855 INFO L153 SettingsManager]: * Use memory slicer=true [2023-12-25 08:05:34,856 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2023-12-25 08:05:34,856 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2023-12-25 08:05:34,856 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2023-12-25 08:05:34,856 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2023-12-25 08:05:34,857 INFO L153 SettingsManager]: * Use SBE=true [2023-12-25 08:05:34,857 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2023-12-25 08:05:34,857 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2023-12-25 08:05:34,857 INFO L153 SettingsManager]: * sizeof long=4 [2023-12-25 08:05:34,857 INFO L153 SettingsManager]: * sizeof POINTER=4 [2023-12-25 08:05:34,858 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2023-12-25 08:05:34,858 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2023-12-25 08:05:34,859 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2023-12-25 08:05:34,860 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2023-12-25 08:05:34,860 INFO L153 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2023-12-25 08:05:34,860 INFO L153 SettingsManager]: * Use bitvectors instead of ints=true [2023-12-25 08:05:34,860 INFO L153 SettingsManager]: * Allow undefined functions=false [2023-12-25 08:05:34,861 INFO L153 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2023-12-25 08:05:34,861 INFO L153 SettingsManager]: * sizeof long double=12 [2023-12-25 08:05:34,861 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2023-12-25 08:05:34,861 INFO L153 SettingsManager]: * Use constant arrays=true [2023-12-25 08:05:34,862 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2023-12-25 08:05:34,862 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2023-12-25 08:05:34,862 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2023-12-25 08:05:34,862 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2023-12-25 08:05:34,862 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2023-12-25 08:05:34,862 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2023-12-25 08:05:34,863 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2023-12-25 08:05:34,863 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2023-12-25 08:05:34,863 INFO L153 SettingsManager]: * Trace refinement strategy=WOLF [2023-12-25 08:05:34,863 INFO L153 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2023-12-25 08:05:34,863 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2023-12-25 08:05:34,863 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2023-12-25 08:05:34,863 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2023-12-25 08:05:34,863 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2023-12-25 08:05:34,864 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2023-12-25 08:05:34,864 INFO L153 SettingsManager]: * Logic for external solver=AUFBV [2023-12-25 08:05:34,864 INFO L153 SettingsManager]: * Looper check in Petri net analysis=SEMANTIC WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release [2023-12-25 08:05:35,040 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2023-12-25 08:05:35,059 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2023-12-25 08:05:35,061 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2023-12-25 08:05:35,062 INFO L270 PluginConnector]: Initializing CDTParser... [2023-12-25 08:05:35,062 INFO L274 PluginConnector]: CDTParser initialized [2023-12-25 08:05:35,063 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/seq-mthreaded/rekcba_aso.1.M4-2.c [2023-12-25 08:05:36,116 INFO L533 CDTParser]: Created temporary CDT project at NULL [2023-12-25 08:05:36,505 INFO L384 CDTParser]: Found 1 translation units. [2023-12-25 08:05:36,505 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/seq-mthreaded/rekcba_aso.1.M4-2.c [2023-12-25 08:05:36,551 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/c07f17b81/852d06f328ea415884358df36979fb00/FLAG7dab65271 [2023-12-25 08:05:36,567 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/c07f17b81/852d06f328ea415884358df36979fb00 [2023-12-25 08:05:36,569 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2023-12-25 08:05:36,571 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2023-12-25 08:05:36,572 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2023-12-25 08:05:36,572 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2023-12-25 08:05:36,576 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2023-12-25 08:05:36,576 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 25.12 08:05:36" (1/1) ... [2023-12-25 08:05:36,577 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@5d8ca0e9 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 25.12 08:05:36, skipping insertion in model container [2023-12-25 08:05:36,578 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 25.12 08:05:36" (1/1) ... [2023-12-25 08:05:36,870 INFO L177 MainTranslator]: Built tables and reachable declarations [2023-12-25 08:05:37,132 WARN L239 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/seq-mthreaded/rekcba_aso.1.M4-2.c[2232,2245] [2023-12-25 08:05:37,993 INFO L209 PostProcessor]: Analyzing one entry point: main [2023-12-25 08:05:38,021 INFO L202 MainTranslator]: Completed pre-run [2023-12-25 08:05:38,028 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"/tmp/aaaa/aso.bug1.i","-S") [52] [2023-12-25 08:05:38,042 WARN L239 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/seq-mthreaded/rekcba_aso.1.M4-2.c[2232,2245] [2023-12-25 08:05:38,743 INFO L209 PostProcessor]: Analyzing one entry point: main [2023-12-25 08:05:38,770 INFO L206 MainTranslator]: Completed translation [2023-12-25 08:05:38,772 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 25.12 08:05:38 WrapperNode [2023-12-25 08:05:38,772 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2023-12-25 08:05:38,773 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2023-12-25 08:05:38,773 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2023-12-25 08:05:38,773 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2023-12-25 08:05:38,778 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 25.12 08:05:38" (1/1) ... [2023-12-25 08:05:39,190 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 25.12 08:05:38" (1/1) ... [2023-12-25 08:05:40,464 INFO L138 Inliner]: procedures = 63, calls = 19341, calls flagged for inlining = 21, calls inlined = 21, statements flattened = 42304 [2023-12-25 08:05:40,465 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2023-12-25 08:05:40,466 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2023-12-25 08:05:40,466 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2023-12-25 08:05:40,466 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2023-12-25 08:05:40,474 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 25.12 08:05:38" (1/1) ... [2023-12-25 08:05:40,474 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 25.12 08:05:38" (1/1) ... [2023-12-25 08:05:40,793 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 25.12 08:05:38" (1/1) ... [2023-12-25 08:05:40,918 INFO L175 MemorySlicer]: Split 14886 memory accesses to 24 slices as follows [2, 2, 193, 17, 9, 2689, 3665, 2408, 1672, 8, 1188, 852, 218, 322, 218, 322, 218, 322, 218, 2, 322, 4, 7, 8]. 25 percent of accesses are in the largest equivalence class. The 136 initializations are split as follows [2, 0, 96, 8, 4, 0, 0, 8, 8, 0, 4, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0]. The 1106 writes are split as follows [0, 1, 1, 1, 1, 97, 97, 8, 8, 4, 4, 4, 110, 108, 110, 108, 110, 108, 110, 1, 108, 0, 3, 4]. [2023-12-25 08:05:40,919 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 25.12 08:05:38" (1/1) ... [2023-12-25 08:05:40,919 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 25.12 08:05:38" (1/1) ... [2023-12-25 08:05:41,463 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 25.12 08:05:38" (1/1) ... [2023-12-25 08:05:41,614 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 25.12 08:05:38" (1/1) ... [2023-12-25 08:05:41,683 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 25.12 08:05:38" (1/1) ... [2023-12-25 08:05:41,759 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 25.12 08:05:38" (1/1) ... [2023-12-25 08:05:41,920 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2023-12-25 08:05:41,921 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2023-12-25 08:05:41,921 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2023-12-25 08:05:41,921 INFO L274 PluginConnector]: RCFGBuilder initialized [2023-12-25 08:05:41,921 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 25.12 08:05:38" (1/1) ... [2023-12-25 08:05:41,926 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2023-12-25 08:05:41,933 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-12-25 08:05:41,944 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2023-12-25 08:05:41,962 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2023-12-25 08:05:41,967 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2023-12-25 08:05:41,976 INFO L130 BoogieDeclarations]: Found specification of procedure __startrek_read_cmd_forward [2023-12-25 08:05:41,978 INFO L138 BoogieDeclarations]: Found implementation of procedure __startrek_read_cmd_forward [2023-12-25 08:05:41,978 INFO L130 BoogieDeclarations]: Found specification of procedure __startrek_cs_t2 [2023-12-25 08:05:41,978 INFO L138 BoogieDeclarations]: Found implementation of procedure __startrek_cs_t2 [2023-12-25 08:05:41,978 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE1#0 [2023-12-25 08:05:41,978 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE1#1 [2023-12-25 08:05:41,978 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE1#2 [2023-12-25 08:05:41,978 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE1#3 [2023-12-25 08:05:41,978 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE1#4 [2023-12-25 08:05:41,978 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE1#5 [2023-12-25 08:05:41,978 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE1#6 [2023-12-25 08:05:41,978 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE1#7 [2023-12-25 08:05:41,978 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE1#8 [2023-12-25 08:05:41,979 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE1#9 [2023-12-25 08:05:41,979 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE1#10 [2023-12-25 08:05:41,979 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE1#11 [2023-12-25 08:05:41,979 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE1#12 [2023-12-25 08:05:41,979 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE1#13 [2023-12-25 08:05:41,979 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE1#14 [2023-12-25 08:05:41,979 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE1#15 [2023-12-25 08:05:41,979 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE1#16 [2023-12-25 08:05:41,979 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE1#17 [2023-12-25 08:05:41,980 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE1#18 [2023-12-25 08:05:41,981 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE1#19 [2023-12-25 08:05:41,981 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE1#20 [2023-12-25 08:05:41,981 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE1#21 [2023-12-25 08:05:41,981 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE1#22 [2023-12-25 08:05:41,981 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE1#23 [2023-12-25 08:05:41,981 INFO L130 BoogieDeclarations]: Found specification of procedure __startrek_write_nxtway_gs_mode [2023-12-25 08:05:41,981 INFO L138 BoogieDeclarations]: Found implementation of procedure __startrek_write_nxtway_gs_mode [2023-12-25 08:05:41,981 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2023-12-25 08:05:41,981 INFO L130 BoogieDeclarations]: Found specification of procedure __startrek_cs_t0 [2023-12-25 08:05:41,981 INFO L138 BoogieDeclarations]: Found implementation of procedure __startrek_cs_t0 [2023-12-25 08:05:41,981 INFO L130 BoogieDeclarations]: Found specification of procedure __startrek_cs_t1 [2023-12-25 08:05:41,981 INFO L138 BoogieDeclarations]: Found implementation of procedure __startrek_cs_t1 [2023-12-25 08:05:41,981 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4#0 [2023-12-25 08:05:41,981 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4#1 [2023-12-25 08:05:41,982 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4#2 [2023-12-25 08:05:41,982 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4#3 [2023-12-25 08:05:41,982 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4#4 [2023-12-25 08:05:41,982 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4#5 [2023-12-25 08:05:41,982 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4#6 [2023-12-25 08:05:41,982 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4#7 [2023-12-25 08:05:41,983 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4#8 [2023-12-25 08:05:41,983 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4#9 [2023-12-25 08:05:41,983 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4#10 [2023-12-25 08:05:41,983 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4#11 [2023-12-25 08:05:41,983 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4#12 [2023-12-25 08:05:41,983 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4#13 [2023-12-25 08:05:41,983 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4#14 [2023-12-25 08:05:41,983 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4#15 [2023-12-25 08:05:41,983 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4#16 [2023-12-25 08:05:41,983 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4#17 [2023-12-25 08:05:41,983 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4#18 [2023-12-25 08:05:41,983 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4#19 [2023-12-25 08:05:41,983 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4#20 [2023-12-25 08:05:41,983 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4#21 [2023-12-25 08:05:41,984 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4#22 [2023-12-25 08:05:41,984 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4#23 [2023-12-25 08:05:41,984 INFO L130 BoogieDeclarations]: Found specification of procedure __startrek_write_obstacle_flag [2023-12-25 08:05:41,984 INFO L138 BoogieDeclarations]: Found implementation of procedure __startrek_write_obstacle_flag [2023-12-25 08:05:41,984 INFO L130 BoogieDeclarations]: Found specification of procedure nxt_motor_set_count [2023-12-25 08:05:41,984 INFO L138 BoogieDeclarations]: Found implementation of procedure nxt_motor_set_count [2023-12-25 08:05:41,984 INFO L130 BoogieDeclarations]: Found specification of procedure ecrobot_get_gyro_sensor [2023-12-25 08:05:41,985 INFO L138 BoogieDeclarations]: Found implementation of procedure ecrobot_get_gyro_sensor [2023-12-25 08:05:41,985 INFO L130 BoogieDeclarations]: Found specification of procedure __startrek_write_cmd_turn [2023-12-25 08:05:41,985 INFO L138 BoogieDeclarations]: Found implementation of procedure __startrek_write_cmd_turn [2023-12-25 08:05:41,985 INFO L130 BoogieDeclarations]: Found specification of procedure __startrek_entry_pt_OSEK_Task_ts1 [2023-12-25 08:05:41,985 INFO L138 BoogieDeclarations]: Found implementation of procedure __startrek_entry_pt_OSEK_Task_ts1 [2023-12-25 08:05:41,985 INFO L130 BoogieDeclarations]: Found specification of procedure __startrek_entry_pt_OSEK_Task_ts2 [2023-12-25 08:05:41,985 INFO L138 BoogieDeclarations]: Found implementation of procedure __startrek_entry_pt_OSEK_Task_ts2 [2023-12-25 08:05:41,985 INFO L130 BoogieDeclarations]: Found specification of procedure __startrek_entry_pt_OSEK_Task_ts3 [2023-12-25 08:05:41,986 INFO L138 BoogieDeclarations]: Found implementation of procedure __startrek_entry_pt_OSEK_Task_ts3 [2023-12-25 08:05:41,986 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE1#0 [2023-12-25 08:05:41,986 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE1#1 [2023-12-25 08:05:41,986 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE1#2 [2023-12-25 08:05:41,986 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE1#3 [2023-12-25 08:05:41,986 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE1#4 [2023-12-25 08:05:41,986 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE1#5 [2023-12-25 08:05:41,986 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE1#6 [2023-12-25 08:05:41,986 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE1#7 [2023-12-25 08:05:41,987 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE1#8 [2023-12-25 08:05:41,987 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE1#9 [2023-12-25 08:05:41,987 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE1#10 [2023-12-25 08:05:41,987 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE1#11 [2023-12-25 08:05:41,987 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE1#12 [2023-12-25 08:05:41,987 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE1#13 [2023-12-25 08:05:41,987 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE1#14 [2023-12-25 08:05:41,987 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE1#15 [2023-12-25 08:05:41,987 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE1#16 [2023-12-25 08:05:41,988 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE1#17 [2023-12-25 08:05:41,988 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE1#18 [2023-12-25 08:05:41,988 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE1#19 [2023-12-25 08:05:41,988 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE1#20 [2023-12-25 08:05:41,988 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE1#21 [2023-12-25 08:05:41,988 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE1#22 [2023-12-25 08:05:41,988 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE1#23 [2023-12-25 08:05:41,988 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2023-12-25 08:05:41,988 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4#0 [2023-12-25 08:05:41,988 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4#1 [2023-12-25 08:05:41,988 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4#2 [2023-12-25 08:05:41,988 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4#3 [2023-12-25 08:05:41,989 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4#4 [2023-12-25 08:05:41,989 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4#5 [2023-12-25 08:05:41,989 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4#6 [2023-12-25 08:05:41,989 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4#7 [2023-12-25 08:05:41,989 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4#8 [2023-12-25 08:05:41,989 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4#9 [2023-12-25 08:05:41,989 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4#10 [2023-12-25 08:05:41,989 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4#11 [2023-12-25 08:05:41,989 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4#12 [2023-12-25 08:05:41,989 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4#13 [2023-12-25 08:05:41,989 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4#14 [2023-12-25 08:05:41,990 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4#15 [2023-12-25 08:05:41,990 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4#16 [2023-12-25 08:05:41,990 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4#17 [2023-12-25 08:05:41,990 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4#18 [2023-12-25 08:05:41,990 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4#19 [2023-12-25 08:05:41,990 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4#20 [2023-12-25 08:05:41,990 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4#21 [2023-12-25 08:05:41,990 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4#22 [2023-12-25 08:05:41,991 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4#23 [2023-12-25 08:05:41,991 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#0 [2023-12-25 08:05:41,991 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#1 [2023-12-25 08:05:41,991 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#2 [2023-12-25 08:05:41,991 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#3 [2023-12-25 08:05:41,991 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#4 [2023-12-25 08:05:41,991 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#5 [2023-12-25 08:05:41,991 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#6 [2023-12-25 08:05:41,991 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#7 [2023-12-25 08:05:41,992 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#8 [2023-12-25 08:05:41,992 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#9 [2023-12-25 08:05:41,992 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#10 [2023-12-25 08:05:41,992 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#11 [2023-12-25 08:05:41,992 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#12 [2023-12-25 08:05:41,992 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#13 [2023-12-25 08:05:41,992 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#14 [2023-12-25 08:05:41,992 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#15 [2023-12-25 08:05:41,992 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#16 [2023-12-25 08:05:41,992 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#17 [2023-12-25 08:05:41,992 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#18 [2023-12-25 08:05:41,992 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#19 [2023-12-25 08:05:41,993 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#20 [2023-12-25 08:05:41,993 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#21 [2023-12-25 08:05:41,993 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#22 [2023-12-25 08:05:41,993 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#23 [2023-12-25 08:05:41,993 INFO L130 BoogieDeclarations]: Found specification of procedure assert [2023-12-25 08:05:41,993 INFO L138 BoogieDeclarations]: Found implementation of procedure assert [2023-12-25 08:05:41,995 INFO L130 BoogieDeclarations]: Found specification of procedure nxt_motor_set_speed [2023-12-25 08:05:41,995 INFO L138 BoogieDeclarations]: Found implementation of procedure nxt_motor_set_speed [2023-12-25 08:05:41,997 INFO L130 BoogieDeclarations]: Found specification of procedure __startrek_write_cmd_forward [2023-12-25 08:05:42,000 INFO L138 BoogieDeclarations]: Found implementation of procedure __startrek_write_cmd_forward [2023-12-25 08:05:42,001 INFO L130 BoogieDeclarations]: Found specification of procedure __startrek_read_obstacle_flag [2023-12-25 08:05:42,001 INFO L138 BoogieDeclarations]: Found implementation of procedure __startrek_read_obstacle_flag [2023-12-25 08:05:42,001 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2023-12-25 08:05:42,001 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2023-12-25 08:05:42,001 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2023-12-25 08:05:42,001 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2023-12-25 08:05:42,001 INFO L130 BoogieDeclarations]: Found specification of procedure ecrobot_get_systick_ms [2023-12-25 08:05:42,001 INFO L138 BoogieDeclarations]: Found implementation of procedure ecrobot_get_systick_ms [2023-12-25 08:05:42,001 INFO L130 BoogieDeclarations]: Found specification of procedure nxt_motor_get_count [2023-12-25 08:05:42,001 INFO L138 BoogieDeclarations]: Found implementation of procedure nxt_motor_get_count [2023-12-25 08:05:42,001 INFO L130 BoogieDeclarations]: Found specification of procedure __startrek_read_nxtway_gs_mode [2023-12-25 08:05:42,002 INFO L138 BoogieDeclarations]: Found implementation of procedure __startrek_read_nxtway_gs_mode [2023-12-25 08:05:42,002 INFO L130 BoogieDeclarations]: Found specification of procedure __startrek_read_cmd_turn [2023-12-25 08:05:42,002 INFO L138 BoogieDeclarations]: Found implementation of procedure __startrek_read_cmd_turn [2023-12-25 08:05:43,715 INFO L241 CfgBuilder]: Building ICFG [2023-12-25 08:05:43,717 INFO L267 CfgBuilder]: Building CFG for each procedure with an implementation [2023-12-25 08:09:09,259 INFO L282 CfgBuilder]: Performing block encoding [2023-12-25 08:09:10,197 INFO L304 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2023-12-25 08:09:10,197 INFO L309 CfgBuilder]: Removed 1 assume(true) statements. [2023-12-25 08:09:10,197 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 25.12 08:09:10 BoogieIcfgContainer [2023-12-25 08:09:10,198 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2023-12-25 08:09:10,200 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2023-12-25 08:09:10,201 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2023-12-25 08:09:10,203 INFO L274 PluginConnector]: TraceAbstraction initialized [2023-12-25 08:09:10,203 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 25.12 08:05:36" (1/3) ... [2023-12-25 08:09:10,204 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@101489a3 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 25.12 08:09:10, skipping insertion in model container [2023-12-25 08:09:10,204 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 25.12 08:05:38" (2/3) ... [2023-12-25 08:09:10,204 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@101489a3 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 25.12 08:09:10, skipping insertion in model container [2023-12-25 08:09:10,204 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 25.12 08:09:10" (3/3) ... [2023-12-25 08:09:10,205 INFO L112 eAbstractionObserver]: Analyzing ICFG rekcba_aso.1.M4-2.c [2023-12-25 08:09:10,219 INFO L204 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2023-12-25 08:09:10,219 INFO L163 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2023-12-25 08:09:10,488 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2023-12-25 08:09:10,496 INFO L357 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopHeads, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mPorIndependenceSettings=[Lde.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings;@79849909, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2023-12-25 08:09:10,496 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2023-12-25 08:09:10,540 INFO L276 IsEmpty]: Start isEmpty. Operand has 12602 states, 8171 states have (on average 1.3112226165707992) internal successors, (10714), 8285 states have internal predecessors, (10714), 4408 states have call successors, (4408), 21 states have call predecessors, (4408), 21 states have return successors, (4408), 4405 states have call predecessors, (4408), 4408 states have call successors, (4408) [2023-12-25 08:09:11,343 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5896 [2023-12-25 08:09:11,344 INFO L187 NwaCegarLoop]: Found error trace [2023-12-25 08:09:11,349 INFO L195 NwaCegarLoop]: trace histogram [551, 551, 551, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-12-25 08:09:11,350 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2023-12-25 08:09:11,355 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-12-25 08:09:11,358 INFO L85 PathProgramCache]: Analyzing trace with hash -2140130362, now seen corresponding path program 1 times [2023-12-25 08:09:11,397 INFO L118 FreeRefinementEngine]: Executing refinement strategy WOLF [2023-12-25 08:09:11,398 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [238320790] [2023-12-25 08:09:11,399 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-12-25 08:09:11,400 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-12-25 08:09:11,400 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2023-12-25 08:09:11,412 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2023-12-25 08:09:11,419 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (2)] Waiting until timeout for monitored process [2023-12-25 08:09:55,342 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-12-25 08:09:55,789 INFO L262 TraceCheckSpWp]: Trace formula consists of 10328 conjuncts, 9 conjunts are in the unsatisfiable core [2023-12-25 08:09:55,993 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2023-12-25 08:10:07,659 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 984 treesize of output 330 [2023-12-25 08:10:13,885 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2023-12-25 08:10:13,886 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 27 select indices, 27 select index equivalence classes, 0 disjoint index pairs (out of 351 index pairs), introduced 27 new quantified variables, introduced 351 case distinctions, treesize of input 340 treesize of output 172 [2023-12-25 08:12:54,540 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 24 treesize of output 12 [2023-12-25 08:12:55,754 INFO L134 CoverageAnalysis]: Checked inductivity of 606100 backedges. 220733 proven. 669 refuted. 0 times theorem prover too weak. 384698 trivial. 0 not checked. [2023-12-25 08:12:55,754 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2023-12-25 08:14:12,644 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 27 treesize of output 15 [2023-12-25 08:14:16,364 INFO L136 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2023-12-25 08:14:16,365 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [238320790] [2023-12-25 08:14:16,365 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [238320790] provided 0 perfect and 1 imperfect interpolant sequences [2023-12-25 08:14:16,365 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleCvc4 [620134234] [2023-12-25 08:14:16,366 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-12-25 08:14:16,367 INFO L173 SolverBuilder]: Constructing external solver with command: cvc4 --incremental --print-success --lang smt [2023-12-25 08:14:16,367 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 [2023-12-25 08:14:16,405 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt (exit command is (exit), workingDir is null) [2023-12-25 08:14:16,407 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt (3)] Waiting until timeout for monitored process [2023-12-25 08:14:53,137 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-12-25 08:14:53,952 INFO L262 TraceCheckSpWp]: Trace formula consists of 10328 conjuncts, 5 conjunts are in the unsatisfiable core [2023-12-25 08:14:54,071 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2023-12-25 08:17:39,749 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 9 [2023-12-25 08:17:40,786 INFO L134 CoverageAnalysis]: Checked inductivity of 606100 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 606100 trivial. 0 not checked. [2023-12-25 08:17:40,787 INFO L323 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2023-12-25 08:17:40,787 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleCvc4 [620134234] provided 1 perfect and 0 imperfect interpolant sequences [2023-12-25 08:17:40,787 INFO L185 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2023-12-25 08:17:40,789 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [8] total 12 [2023-12-25 08:17:40,791 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [205726149] [2023-12-25 08:17:40,792 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-12-25 08:17:40,803 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2023-12-25 08:17:40,803 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2023-12-25 08:17:40,841 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2023-12-25 08:17:40,844 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=66, Invalid=314, Unknown=0, NotChecked=0, Total=380 [2023-12-25 08:17:40,888 INFO L87 Difference]: Start difference. First operand has 12602 states, 8171 states have (on average 1.3112226165707992) internal successors, (10714), 8285 states have internal predecessors, (10714), 4408 states have call successors, (4408), 21 states have call predecessors, (4408), 21 states have return successors, (4408), 4405 states have call predecessors, (4408), 4408 states have call successors, (4408) Second operand has 6 states, 5 states have (on average 628.4) internal successors, (3142), 4 states have internal predecessors, (3142), 2 states have call successors, (552), 2 states have call predecessors, (552), 1 states have return successors, (551), 1 states have call predecessors, (551), 1 states have call successors, (551) [2023-12-25 08:17:45,981 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 4.44s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [] [2023-12-25 08:17:50,031 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 4.05s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [] [2023-12-25 08:17:54,079 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 4.05s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [] [2023-12-25 08:17:58,119 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 4.04s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [] [2023-12-25 08:18:04,509 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 4.24s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [] [2023-12-25 08:18:08,512 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 4.00s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [] [2023-12-25 08:18:12,517 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 4.00s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [] [2023-12-25 08:18:16,530 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 4.01s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [] [2023-12-25 08:18:20,541 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 4.01s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [] [2023-12-25 08:18:26,853 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 4.28s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [] [2023-12-25 08:18:30,857 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 4.00s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [] [2023-12-25 08:18:34,860 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 4.00s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [] [2023-12-25 08:18:38,865 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 4.00s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [] [2023-12-25 08:18:47,500 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2023-12-25 08:18:47,501 INFO L93 Difference]: Finished difference Result 26951 states and 46951 transitions. [2023-12-25 08:18:47,503 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2023-12-25 08:18:47,506 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 628.4) internal successors, (3142), 4 states have internal predecessors, (3142), 2 states have call successors, (552), 2 states have call predecessors, (552), 1 states have return successors, (551), 1 states have call predecessors, (551), 1 states have call successors, (551) Word has length 5895 [2023-12-25 08:18:47,516 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2023-12-25 08:18:47,629 INFO L225 Difference]: With dead ends: 26951 [2023-12-25 08:18:47,629 INFO L226 Difference]: Without dead ends: 14343 [2023-12-25 08:18:47,714 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 17531 GetRequests, 17510 SyntacticMatches, 0 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 134 ImplicationChecksByTransitivity, 6.9s TimeCoverageRelationStatistics Valid=80, Invalid=426, Unknown=0, NotChecked=0, Total=506 [2023-12-25 08:18:47,719 INFO L413 NwaCegarLoop]: 19410 mSDtfsCounter, 15292 mSDsluCounter, 60557 mSDsCounter, 0 mSdLazyCounter, 826 mSolverCounterSat, 3 mSolverCounterUnsat, 13 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 63.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 15292 SdHoareTripleChecker+Valid, 79967 SdHoareTripleChecker+Invalid, 842 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.3s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 826 IncrementalHoareTripleChecker+Invalid, 13 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 64.6s IncrementalHoareTripleChecker+Time [2023-12-25 08:18:47,719 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [15292 Valid, 79967 Invalid, 842 Unknown, 0 Unchecked, 0.3s Time], IncrementalHoareTripleChecker [3 Valid, 826 Invalid, 13 Unknown, 0 Unchecked, 64.6s Time] [2023-12-25 08:18:47,754 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 14343 states. [2023-12-25 08:19:01,541 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 14343 to 14341. [2023-12-25 08:19:01,578 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14341 states, 9118 states have (on average 1.2939241061636324) internal successors, (11798), 9331 states have internal predecessors, (11798), 5184 states have call successors, (5184), 38 states have call predecessors, (5184), 38 states have return successors, (5278), 5177 states have call predecessors, (5278), 5182 states have call successors, (5278) [2023-12-25 08:19:01,650 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14341 states to 14341 states and 22260 transitions. [2023-12-25 08:19:01,656 INFO L78 Accepts]: Start accepts. Automaton has 14341 states and 22260 transitions. Word has length 5895 [2023-12-25 08:19:01,667 INFO L84 Accepts]: Finished accepts. word is rejected. [2023-12-25 08:19:01,667 INFO L495 AbstractCegarLoop]: Abstraction has 14341 states and 22260 transitions. [2023-12-25 08:19:01,669 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 628.4) internal successors, (3142), 4 states have internal predecessors, (3142), 2 states have call successors, (552), 2 states have call predecessors, (552), 1 states have return successors, (551), 1 states have call predecessors, (551), 1 states have call successors, (551) [2023-12-25 08:19:01,669 INFO L276 IsEmpty]: Start isEmpty. Operand 14341 states and 22260 transitions. [2023-12-25 08:19:02,002 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 5902 [2023-12-25 08:19:02,002 INFO L187 NwaCegarLoop]: Found error trace [2023-12-25 08:19:02,004 INFO L195 NwaCegarLoop]: trace histogram [551, 551, 551, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-12-25 08:19:02,109 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (2)] Forceful destruction successful, exit code 0 [2023-12-25 08:19:02,291 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt (3)] Forceful destruction successful, exit code 0 [2023-12-25 08:19:02,428 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3,3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/cvc4 --incremental --print-success --lang smt [2023-12-25 08:19:02,429 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2023-12-25 08:19:02,429 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-12-25 08:19:02,431 INFO L85 PathProgramCache]: Analyzing trace with hash -377884816, now seen corresponding path program 1 times [2023-12-25 08:19:02,445 INFO L118 FreeRefinementEngine]: Executing refinement strategy WOLF [2023-12-25 08:19:02,446 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1936817570] [2023-12-25 08:19:02,447 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-12-25 08:19:02,448 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-12-25 08:19:02,448 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2023-12-25 08:19:02,449 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2023-12-25 08:19:02,489 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (4)] Waiting until timeout for monitored process [2023-12-25 08:19:46,133 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat Received shutdown request... [2023-12-25 08:19:46,153 WARN L340 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (4)] Timeout while monitored process is still running, waiting 1000 ms for graceful end [2023-12-25 08:19:46,153 WARN L340 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Timeout while monitored process is still running, waiting 1000 ms for graceful end [2023-12-25 08:19:46,722 INFO L262 TraceCheckSpWp]: Trace formula consists of 10336 conjuncts, 9 conjunts are in the unsatisfiable core [2023-12-25 08:19:47,107 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2023-12-25 08:19:47,163 INFO L805 garLoopResultBuilder]: Registering result TIMEOUT for location assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2023-12-25 08:19:47,354 WARN L435 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (4)] Forcibly destroying the process [2023-12-25 08:19:47,354 WARN L435 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Forcibly destroying the process [2023-12-25 08:19:47,366 WARN L435 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (4)] Forcibly destroying the process [2023-12-25 08:19:47,366 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2023-12-25 08:19:47,366 WARN L619 AbstractCegarLoop]: Verification canceled: while NwaCegarLoop was analyzing trace of length 5902 with TraceHistMax 551,while TraceCheckSpWp was constructing forward predicates,while executing Executor. [2023-12-25 08:19:47,370 INFO L445 BasicCegarLoop]: Path program histogram: [1, 1] [2023-12-25 08:19:47,373 INFO L179 ceAbstractionStarter]: Computing trace abstraction results [2023-12-25 08:19:47,377 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 25.12 08:19:47 BoogieIcfgContainer [2023-12-25 08:19:47,378 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2023-12-25 08:19:47,382 INFO L158 Benchmark]: Toolchain (without parser) took 850807.40ms. Allocated memory was 186.6MB in the beginning and 3.0GB in the end (delta: 2.8GB). Free memory was 131.6MB in the beginning and 2.2GB in the end (delta: -2.1GB). Peak memory consumption was 702.0MB. Max. memory is 8.0GB. [2023-12-25 08:19:47,383 INFO L158 Benchmark]: CDTParser took 0.15ms. Allocated memory is still 186.6MB. Free memory is still 144.6MB. There was no memory consumed. Max. memory is 8.0GB. [2023-12-25 08:19:47,383 INFO L158 Benchmark]: CACSL2BoogieTranslator took 2200.36ms. Allocated memory was 186.6MB in the beginning and 412.1MB in the end (delta: 225.4MB). Free memory was 131.3MB in the beginning and 274.5MB in the end (delta: -143.1MB). Peak memory consumption was 182.3MB. Max. memory is 8.0GB. [2023-12-25 08:19:47,383 INFO L158 Benchmark]: Boogie Procedure Inliner took 1692.10ms. Allocated memory was 412.1MB in the beginning and 824.2MB in the end (delta: 412.1MB). Free memory was 274.5MB in the beginning and 577.5MB in the end (delta: -303.0MB). Peak memory consumption was 175.7MB. Max. memory is 8.0GB. [2023-12-25 08:19:47,383 INFO L158 Benchmark]: Boogie Preprocessor took 1454.11ms. Allocated memory was 824.2MB in the beginning and 2.1GB in the end (delta: 1.2GB). Free memory was 577.5MB in the beginning and 1.7GB in the end (delta: -1.1GB). Peak memory consumption was 148.8MB. Max. memory is 8.0GB. [2023-12-25 08:19:47,383 INFO L158 Benchmark]: RCFGBuilder took 208277.09ms. Allocated memory was 2.1GB in the beginning and 3.0GB in the end (delta: 947.9MB). Free memory was 1.7GB in the beginning and 2.4GB in the end (delta: -648.9MB). Peak memory consumption was 746.7MB. Max. memory is 8.0GB. [2023-12-25 08:19:47,384 INFO L158 Benchmark]: TraceAbstraction took 637177.36ms. Allocated memory is still 3.0GB. Free memory was 2.4GB in the beginning and 2.2GB in the end (delta: 108.5MB). Peak memory consumption was 109.1MB. Max. memory is 8.0GB. [2023-12-25 08:19:47,385 INFO L338 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.15ms. Allocated memory is still 186.6MB. Free memory is still 144.6MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 2200.36ms. Allocated memory was 186.6MB in the beginning and 412.1MB in the end (delta: 225.4MB). Free memory was 131.3MB in the beginning and 274.5MB in the end (delta: -143.1MB). Peak memory consumption was 182.3MB. Max. memory is 8.0GB. * Boogie Procedure Inliner took 1692.10ms. Allocated memory was 412.1MB in the beginning and 824.2MB in the end (delta: 412.1MB). Free memory was 274.5MB in the beginning and 577.5MB in the end (delta: -303.0MB). Peak memory consumption was 175.7MB. Max. memory is 8.0GB. * Boogie Preprocessor took 1454.11ms. Allocated memory was 824.2MB in the beginning and 2.1GB in the end (delta: 1.2GB). Free memory was 577.5MB in the beginning and 1.7GB in the end (delta: -1.1GB). Peak memory consumption was 148.8MB. Max. memory is 8.0GB. * RCFGBuilder took 208277.09ms. Allocated memory was 2.1GB in the beginning and 3.0GB in the end (delta: 947.9MB). Free memory was 1.7GB in the beginning and 2.4GB in the end (delta: -648.9MB). Peak memory consumption was 746.7MB. Max. memory is 8.0GB. * TraceAbstraction took 637177.36ms. Allocated memory is still 3.0GB. Free memory was 2.4GB in the beginning and 2.2GB in the end (delta: 108.5MB). Peak memory consumption was 109.1MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: - GenericResultAtLocation [Line: 52]: Unsoundness Warning Ignoring preprocessor pragma C: #pragma merger(0,"/tmp/aaaa/aso.bug1.i","-S") [52] * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - TimeoutResultAtElement [Line: 53]: Timeout (TraceAbstraction) Unable to prove that a call to reach_error is unreachable (line 53). Cancelled while NwaCegarLoop was analyzing trace of length 5902 with TraceHistMax 551,while TraceCheckSpWp was constructing forward predicates,while executing Executor. - StatisticsResult: Ultimate Automizer benchmark data CFG has 22 procedures, 12602 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 637.1s, OverallIterations: 2, TraceHistogramMax: 551, PathProgramHistogramMax: 1, EmptinessCheckTime: 1.2s, AutomataDifference: 66.9s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.2s, HoareTripleCheckerStatistics: 13 mSolverCounterUnknown, 15292 SdHoareTripleChecker+Valid, 64.6s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 15292 mSDsluCounter, 79967 SdHoareTripleChecker+Invalid, 63.7s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 60557 mSDsCounter, 3 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 826 IncrementalHoareTripleChecker+Invalid, 842 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 3 mSolverCounterUnsat, 19410 mSDtfsCounter, 826 mSolverCounterSat, 0.3s SdHoareTripleChecker+Time, 13 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 17531 GetRequests, 17510 SyntacticMatches, 0 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 134 ImplicationChecksByTransitivity, 6.9s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=14341occurred in iteration=1, InterpolantAutomatonStates: 6, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 13.9s AutomataMinimizationTime, 1 MinimizatonAttempts, 2 StatesRemovedByMinimization, 1 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 5.2s SsaConstructionTime, 9.7s SatisfiabilityAnalysisTime, 428.7s InterpolantComputationTime, 11790 NumberOfCodeBlocks, 11790 NumberOfCodeBlocksAsserted, 2 NumberOfCheckSat, 11788 ConstructedInterpolants, 7 QuantifiedInterpolants, 116875 SizeOfPredicates, 15 NumberOfNonLiveVariables, 20656 ConjunctsInSsa, 14 ConjunctsInUnsatCore, 2 InterpolantComputations, 1 PerfectInterpolantSequences, 1211531/1212200 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available RESULT: Ultimate could not prove your program: Timeout Completed graceful shutdown [2023-12-25 08:19:47,432 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (4)] Forceful destruction successful, exit code 137