./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/seq-mthreaded/rekcba_aso.4.M4.c --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 798a7b37 Calling Ultimate with: /root/.sdkman/candidates/java/21.0.5-tem/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.6.800.v20240513-1750.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/seq-mthreaded/rekcba_aso.4.M4.c -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(reach_error())) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash e7add536910711ca3dec9220f075e67d5ee9c224580eddfa4901c995fa5681fd --- Real Ultimate output --- This is Ultimate 0.3.0-?-798a7b3-m [2025-03-03 14:55:48,323 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-03-03 14:55:48,372 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2025-03-03 14:55:48,375 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-03-03 14:55:48,376 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-03-03 14:55:48,389 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-03-03 14:55:48,389 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-03-03 14:55:48,390 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-03-03 14:55:48,390 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-03-03 14:55:48,390 INFO L153 SettingsManager]: * Use memory slicer=true [2025-03-03 14:55:48,390 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-03-03 14:55:48,390 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-03-03 14:55:48,390 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-03-03 14:55:48,390 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-03-03 14:55:48,391 INFO L153 SettingsManager]: * Use SBE=true [2025-03-03 14:55:48,391 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-03-03 14:55:48,391 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-03-03 14:55:48,391 INFO L153 SettingsManager]: * sizeof long=4 [2025-03-03 14:55:48,391 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-03-03 14:55:48,391 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-03-03 14:55:48,391 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-03-03 14:55:48,391 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-03-03 14:55:48,391 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-03-03 14:55:48,391 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-03-03 14:55:48,391 INFO L153 SettingsManager]: * sizeof long double=12 [2025-03-03 14:55:48,391 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-03-03 14:55:48,391 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-03-03 14:55:48,392 INFO L153 SettingsManager]: * Use constant arrays=true [2025-03-03 14:55:48,392 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-03-03 14:55:48,392 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-03-03 14:55:48,392 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-03-03 14:55:48,392 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-03-03 14:55:48,392 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-03 14:55:48,392 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-03-03 14:55:48,392 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-03-03 14:55:48,392 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-03-03 14:55:48,392 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-03-03 14:55:48,392 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-03-03 14:55:48,392 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-03-03 14:55:48,393 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-03-03 14:55:48,393 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-03-03 14:55:48,393 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-03-03 14:55:48,393 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-03-03 14:55:48,393 INFO L153 SettingsManager]: * Looper check in Petri net analysis=SEMANTIC Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G ! call(reach_error())) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> e7add536910711ca3dec9220f075e67d5ee9c224580eddfa4901c995fa5681fd [2025-03-03 14:55:48,607 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-03-03 14:55:48,614 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-03-03 14:55:48,616 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-03-03 14:55:48,617 INFO L270 PluginConnector]: Initializing CDTParser... [2025-03-03 14:55:48,617 INFO L274 PluginConnector]: CDTParser initialized [2025-03-03 14:55:48,618 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/seq-mthreaded/rekcba_aso.4.M4.c [2025-03-03 14:55:49,778 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/7dbf5c919/d831b81fa9854170a47fa3f26c56e62d/FLAG4695229b8 [2025-03-03 14:55:50,324 INFO L384 CDTParser]: Found 1 translation units. [2025-03-03 14:55:50,324 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/seq-mthreaded/rekcba_aso.4.M4.c [2025-03-03 14:55:50,379 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/7dbf5c919/d831b81fa9854170a47fa3f26c56e62d/FLAG4695229b8 [2025-03-03 14:55:50,849 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/7dbf5c919/d831b81fa9854170a47fa3f26c56e62d [2025-03-03 14:55:50,851 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-03-03 14:55:50,852 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-03-03 14:55:50,853 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-03-03 14:55:50,853 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-03-03 14:55:50,856 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-03-03 14:55:50,857 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 03.03 02:55:50" (1/1) ... [2025-03-03 14:55:50,858 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@3730fdd6 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 02:55:50, skipping insertion in model container [2025-03-03 14:55:50,858 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 03.03 02:55:50" (1/1) ... [2025-03-03 14:55:50,962 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-03-03 14:55:51,170 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/seq-mthreaded/rekcba_aso.4.M4.c[2319,2332] [2025-03-03 14:55:52,169 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-03 14:55:52,208 INFO L200 MainTranslator]: Completed pre-run [2025-03-03 14:55:52,215 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring preprocessor pragma C: #pragma merger(0,"/tmp/aaaa/aso.bug4.i","-S") [48] [2025-03-03 14:55:52,223 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/seq-mthreaded/rekcba_aso.4.M4.c[2319,2332] [2025-03-03 14:55:52,860 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-03 14:55:52,912 INFO L204 MainTranslator]: Completed translation [2025-03-03 14:55:52,913 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 02:55:52 WrapperNode [2025-03-03 14:55:52,913 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-03-03 14:55:52,915 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-03-03 14:55:52,915 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-03-03 14:55:52,915 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-03-03 14:55:52,920 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 02:55:52" (1/1) ... [2025-03-03 14:55:53,237 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 02:55:52" (1/1) ... [2025-03-03 14:55:54,816 INFO L138 Inliner]: procedures = 73, calls = 23333, calls flagged for inlining = 29, calls inlined = 29, statements flattened = 49018 [2025-03-03 14:55:54,817 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-03-03 14:55:54,818 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-03-03 14:55:54,818 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-03-03 14:55:54,818 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-03-03 14:55:54,826 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 02:55:52" (1/1) ... [2025-03-03 14:55:54,826 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 02:55:52" (1/1) ... [2025-03-03 14:55:55,221 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 02:55:52" (1/1) ... [2025-03-03 14:55:55,513 INFO L175 MemorySlicer]: Split 18581 memory accesses to 32 slices as follows [4, 8, 7, 8, 2, 2, 194, 17, 9, 2784, 3584, 2352, 1664, 1060, 852, 325, 429, 325, 429, 325, 429, 325, 2, 429, 325, 429, 325, 429, 325, 429, 325, 429]. 19 percent of accesses are in the largest equivalence class. The 1960 initializations are split as follows [0, 0, 2, 0, 2, 0, 0, 8, 4, 96, 96, 8, 8, 4, 4, 108, 108, 108, 108, 108, 108, 108, 0, 108, 108, 108, 108, 108, 108, 108, 108, 108]. The 2057 writes are split as follows [0, 4, 3, 4, 0, 1, 98, 1, 1, 96, 96, 8, 8, 4, 4, 109, 107, 109, 107, 109, 107, 109, 1, 107, 109, 107, 109, 107, 109, 107, 109, 107]. [2025-03-03 14:55:55,513 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 02:55:52" (1/1) ... [2025-03-03 14:55:55,513 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 02:55:52" (1/1) ... [2025-03-03 14:55:56,477 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 02:55:52" (1/1) ... [2025-03-03 14:55:56,524 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 02:55:52" (1/1) ... [2025-03-03 14:55:56,658 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 02:55:52" (1/1) ... [2025-03-03 14:55:56,731 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 02:55:52" (1/1) ... [2025-03-03 14:55:56,921 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-03-03 14:55:56,922 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-03-03 14:55:56,922 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-03-03 14:55:56,922 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-03-03 14:55:56,923 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 02:55:52" (1/1) ... [2025-03-03 14:55:56,927 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-03 14:55:56,935 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-03 14:55:56,948 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) [2025-03-03 14:55:56,950 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 [2025-03-03 14:55:56,969 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-03-03 14:55:56,969 INFO L130 BoogieDeclarations]: Found specification of procedure __startrek_read_cmd_forward [2025-03-03 14:55:56,969 INFO L138 BoogieDeclarations]: Found implementation of procedure __startrek_read_cmd_forward [2025-03-03 14:55:56,969 INFO L130 BoogieDeclarations]: Found specification of procedure __startrek_cs_t2 [2025-03-03 14:55:56,969 INFO L138 BoogieDeclarations]: Found implementation of procedure __startrek_cs_t2 [2025-03-03 14:55:56,969 INFO L130 BoogieDeclarations]: Found specification of procedure __startrek_write_nxtway_gs_mode [2025-03-03 14:55:56,969 INFO L138 BoogieDeclarations]: Found implementation of procedure __startrek_write_nxtway_gs_mode [2025-03-03 14:55:56,969 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#0 [2025-03-03 14:55:56,969 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#1 [2025-03-03 14:55:56,969 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#2 [2025-03-03 14:55:56,969 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#3 [2025-03-03 14:55:56,969 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#4 [2025-03-03 14:55:56,969 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#5 [2025-03-03 14:55:56,969 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#6 [2025-03-03 14:55:56,969 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#7 [2025-03-03 14:55:56,970 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#8 [2025-03-03 14:55:56,970 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#9 [2025-03-03 14:55:56,970 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#10 [2025-03-03 14:55:56,970 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#11 [2025-03-03 14:55:56,970 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#12 [2025-03-03 14:55:56,970 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#13 [2025-03-03 14:55:56,970 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#14 [2025-03-03 14:55:56,970 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#15 [2025-03-03 14:55:56,970 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#16 [2025-03-03 14:55:56,970 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#17 [2025-03-03 14:55:56,970 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#18 [2025-03-03 14:55:56,970 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#19 [2025-03-03 14:55:56,970 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#20 [2025-03-03 14:55:56,970 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#21 [2025-03-03 14:55:56,970 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#22 [2025-03-03 14:55:56,970 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#23 [2025-03-03 14:55:56,970 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#24 [2025-03-03 14:55:56,970 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#25 [2025-03-03 14:55:56,970 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#26 [2025-03-03 14:55:56,970 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#27 [2025-03-03 14:55:56,970 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#28 [2025-03-03 14:55:56,970 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#29 [2025-03-03 14:55:56,970 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#30 [2025-03-03 14:55:56,970 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#31 [2025-03-03 14:55:56,971 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2025-03-03 14:55:56,971 INFO L130 BoogieDeclarations]: Found specification of procedure __startrek_cs_t0 [2025-03-03 14:55:56,971 INFO L138 BoogieDeclarations]: Found implementation of procedure __startrek_cs_t0 [2025-03-03 14:55:56,971 INFO L130 BoogieDeclarations]: Found specification of procedure __startrek_cs_t1 [2025-03-03 14:55:56,971 INFO L138 BoogieDeclarations]: Found implementation of procedure __startrek_cs_t1 [2025-03-03 14:55:56,971 INFO L130 BoogieDeclarations]: Found specification of procedure __startrek_read___startrek_current_priority [2025-03-03 14:55:56,971 INFO L138 BoogieDeclarations]: Found implementation of procedure __startrek_read___startrek_current_priority [2025-03-03 14:55:56,972 INFO L130 BoogieDeclarations]: Found specification of procedure __startrek_write_obstacle_flag [2025-03-03 14:55:56,972 INFO L138 BoogieDeclarations]: Found implementation of procedure __startrek_write_obstacle_flag [2025-03-03 14:55:56,972 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#0 [2025-03-03 14:55:56,972 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#1 [2025-03-03 14:55:56,972 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#2 [2025-03-03 14:55:56,972 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#3 [2025-03-03 14:55:56,972 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#4 [2025-03-03 14:55:56,972 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#5 [2025-03-03 14:55:56,972 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#6 [2025-03-03 14:55:56,972 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#7 [2025-03-03 14:55:56,972 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#8 [2025-03-03 14:55:56,972 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#9 [2025-03-03 14:55:56,972 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#10 [2025-03-03 14:55:56,972 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#11 [2025-03-03 14:55:56,972 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#12 [2025-03-03 14:55:56,973 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#13 [2025-03-03 14:55:56,973 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#14 [2025-03-03 14:55:56,973 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#15 [2025-03-03 14:55:56,973 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#16 [2025-03-03 14:55:56,973 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#17 [2025-03-03 14:55:56,973 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#18 [2025-03-03 14:55:56,973 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#19 [2025-03-03 14:55:56,973 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#20 [2025-03-03 14:55:56,973 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#21 [2025-03-03 14:55:56,973 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#22 [2025-03-03 14:55:56,973 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#23 [2025-03-03 14:55:56,974 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#24 [2025-03-03 14:55:56,974 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#25 [2025-03-03 14:55:56,974 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#26 [2025-03-03 14:55:56,974 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#27 [2025-03-03 14:55:56,974 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#28 [2025-03-03 14:55:56,974 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#29 [2025-03-03 14:55:56,974 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#30 [2025-03-03 14:55:56,974 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#31 [2025-03-03 14:55:56,974 INFO L130 BoogieDeclarations]: Found specification of procedure nxt_motor_set_count [2025-03-03 14:55:56,974 INFO L138 BoogieDeclarations]: Found implementation of procedure nxt_motor_set_count [2025-03-03 14:55:56,974 INFO L130 BoogieDeclarations]: Found specification of procedure ecrobot_get_gyro_sensor [2025-03-03 14:55:56,974 INFO L138 BoogieDeclarations]: Found implementation of procedure ecrobot_get_gyro_sensor [2025-03-03 14:55:56,974 INFO L130 BoogieDeclarations]: Found specification of procedure __startrek_write_cmd_turn [2025-03-03 14:55:56,974 INFO L138 BoogieDeclarations]: Found implementation of procedure __startrek_write_cmd_turn [2025-03-03 14:55:56,974 INFO L130 BoogieDeclarations]: Found specification of procedure __startrek_write___startrek_current_priority [2025-03-03 14:55:56,974 INFO L138 BoogieDeclarations]: Found implementation of procedure __startrek_write___startrek_current_priority [2025-03-03 14:55:56,974 INFO L130 BoogieDeclarations]: Found specification of procedure __startrek_entry_pt_OSEK_Task_ts1 [2025-03-03 14:55:56,974 INFO L138 BoogieDeclarations]: Found implementation of procedure __startrek_entry_pt_OSEK_Task_ts1 [2025-03-03 14:55:56,974 INFO L130 BoogieDeclarations]: Found specification of procedure __startrek_entry_pt_OSEK_Task_ts2 [2025-03-03 14:55:56,974 INFO L138 BoogieDeclarations]: Found implementation of procedure __startrek_entry_pt_OSEK_Task_ts2 [2025-03-03 14:55:56,975 INFO L130 BoogieDeclarations]: Found specification of procedure __startrek_entry_pt_OSEK_Task_ts3 [2025-03-03 14:55:56,975 INFO L138 BoogieDeclarations]: Found implementation of procedure __startrek_entry_pt_OSEK_Task_ts3 [2025-03-03 14:55:56,975 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2025-03-03 14:55:56,975 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#0 [2025-03-03 14:55:56,975 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#1 [2025-03-03 14:55:56,975 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#2 [2025-03-03 14:55:56,975 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#3 [2025-03-03 14:55:56,975 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#4 [2025-03-03 14:55:56,975 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#5 [2025-03-03 14:55:56,975 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#6 [2025-03-03 14:55:56,975 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#7 [2025-03-03 14:55:56,975 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#8 [2025-03-03 14:55:56,975 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#9 [2025-03-03 14:55:56,975 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#10 [2025-03-03 14:55:56,975 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#11 [2025-03-03 14:55:56,975 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#12 [2025-03-03 14:55:56,975 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#13 [2025-03-03 14:55:56,975 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#14 [2025-03-03 14:55:56,975 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#15 [2025-03-03 14:55:56,975 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#16 [2025-03-03 14:55:56,975 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#17 [2025-03-03 14:55:56,975 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#18 [2025-03-03 14:55:56,975 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#19 [2025-03-03 14:55:56,975 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#20 [2025-03-03 14:55:56,975 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#21 [2025-03-03 14:55:56,975 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#22 [2025-03-03 14:55:56,975 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#23 [2025-03-03 14:55:56,975 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#24 [2025-03-03 14:55:56,975 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#25 [2025-03-03 14:55:56,975 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#26 [2025-03-03 14:55:56,975 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#27 [2025-03-03 14:55:56,975 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#28 [2025-03-03 14:55:56,976 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#29 [2025-03-03 14:55:56,976 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#30 [2025-03-03 14:55:56,976 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#31 [2025-03-03 14:55:56,976 INFO L130 BoogieDeclarations]: Found specification of procedure assert [2025-03-03 14:55:56,976 INFO L138 BoogieDeclarations]: Found implementation of procedure assert [2025-03-03 14:55:56,976 INFO L130 BoogieDeclarations]: Found specification of procedure nxt_motor_set_speed [2025-03-03 14:55:56,976 INFO L138 BoogieDeclarations]: Found implementation of procedure nxt_motor_set_speed [2025-03-03 14:55:56,976 INFO L130 BoogieDeclarations]: Found specification of procedure __startrek_write_cmd_forward [2025-03-03 14:55:56,976 INFO L138 BoogieDeclarations]: Found implementation of procedure __startrek_write_cmd_forward [2025-03-03 14:55:56,976 INFO L130 BoogieDeclarations]: Found specification of procedure __startrek_read_obstacle_flag [2025-03-03 14:55:56,976 INFO L138 BoogieDeclarations]: Found implementation of procedure __startrek_read_obstacle_flag [2025-03-03 14:55:56,976 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-03-03 14:55:56,976 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-03-03 14:55:56,976 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2025-03-03 14:55:56,976 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#1 [2025-03-03 14:55:56,976 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#2 [2025-03-03 14:55:56,976 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#3 [2025-03-03 14:55:56,976 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#4 [2025-03-03 14:55:56,976 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#5 [2025-03-03 14:55:56,976 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#6 [2025-03-03 14:55:56,976 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#7 [2025-03-03 14:55:56,980 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#8 [2025-03-03 14:55:56,980 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#9 [2025-03-03 14:55:56,980 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#10 [2025-03-03 14:55:56,980 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#11 [2025-03-03 14:55:56,980 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#12 [2025-03-03 14:55:56,980 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#13 [2025-03-03 14:55:56,980 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#14 [2025-03-03 14:55:56,980 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#15 [2025-03-03 14:55:56,980 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#16 [2025-03-03 14:55:56,980 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#17 [2025-03-03 14:55:56,980 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#18 [2025-03-03 14:55:56,980 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#19 [2025-03-03 14:55:56,980 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#20 [2025-03-03 14:55:56,980 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#21 [2025-03-03 14:55:56,980 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#22 [2025-03-03 14:55:56,980 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#23 [2025-03-03 14:55:56,980 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#24 [2025-03-03 14:55:56,980 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#25 [2025-03-03 14:55:56,980 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#26 [2025-03-03 14:55:56,980 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#27 [2025-03-03 14:55:56,980 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#28 [2025-03-03 14:55:56,980 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#29 [2025-03-03 14:55:56,980 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#30 [2025-03-03 14:55:56,980 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#31 [2025-03-03 14:55:56,980 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-03-03 14:55:56,981 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-03-03 14:55:56,981 INFO L130 BoogieDeclarations]: Found specification of procedure ecrobot_get_systick_ms [2025-03-03 14:55:56,981 INFO L138 BoogieDeclarations]: Found implementation of procedure ecrobot_get_systick_ms [2025-03-03 14:55:56,981 INFO L130 BoogieDeclarations]: Found specification of procedure nxt_motor_get_count [2025-03-03 14:55:56,981 INFO L138 BoogieDeclarations]: Found implementation of procedure nxt_motor_get_count [2025-03-03 14:55:56,981 INFO L130 BoogieDeclarations]: Found specification of procedure __startrek_read_nxtway_gs_mode [2025-03-03 14:55:56,981 INFO L138 BoogieDeclarations]: Found implementation of procedure __startrek_read_nxtway_gs_mode [2025-03-03 14:55:56,981 INFO L130 BoogieDeclarations]: Found specification of procedure __startrek_read_cmd_turn [2025-03-03 14:55:56,981 INFO L138 BoogieDeclarations]: Found implementation of procedure __startrek_read_cmd_turn [2025-03-03 14:55:58,480 INFO L256 CfgBuilder]: Building ICFG [2025-03-03 14:55:58,482 INFO L286 CfgBuilder]: Building CFG for each procedure with an implementation [2025-03-03 14:55:58,830 INFO L1325 $ProcedureCfgBuilder]: dead code at ProgramPoint L243: call ULTIMATE.dealloc(OSEK_Task_ts1_~#pwm_l~0#1.base, OSEK_Task_ts1_~#pwm_l~0#1.offset);havoc OSEK_Task_ts1_~#pwm_l~0#1.base, OSEK_Task_ts1_~#pwm_l~0#1.offset;call ULTIMATE.dealloc(OSEK_Task_ts1_~#pwm_r~0#1.base, OSEK_Task_ts1_~#pwm_r~0#1.offset);havoc OSEK_Task_ts1_~#pwm_r~0#1.base, OSEK_Task_ts1_~#pwm_r~0#1.offset; [2025-03-03 14:55:58,830 INFO L1325 $ProcedureCfgBuilder]: dead code at ProgramPoint L105: call ULTIMATE.dealloc(balance_control_~#tmp~0#1.base, balance_control_~#tmp~0#1.offset);havoc balance_control_~#tmp~0#1.base, balance_control_~#tmp~0#1.offset;call ULTIMATE.dealloc(balance_control_~#tmp_theta_0~0#1.base, balance_control_~#tmp_theta_0~0#1.offset);havoc balance_control_~#tmp_theta_0~0#1.base, balance_control_~#tmp_theta_0~0#1.offset; [2025-03-03 14:56:28,326 INFO L? ?]: Removed 429 outVars from TransFormulas that were not future-live. [2025-03-03 14:56:28,327 INFO L307 CfgBuilder]: Performing block encoding [2025-03-03 14:56:28,450 INFO L331 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-03-03 14:56:28,451 INFO L336 CfgBuilder]: Removed 0 assume(true) statements. [2025-03-03 14:56:28,451 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 03.03 02:56:28 BoogieIcfgContainer [2025-03-03 14:56:28,451 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-03-03 14:56:28,454 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-03-03 14:56:28,454 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-03-03 14:56:28,556 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-03-03 14:56:28,557 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 03.03 02:55:50" (1/3) ... [2025-03-03 14:56:28,558 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7d64ebdf and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 03.03 02:56:28, skipping insertion in model container [2025-03-03 14:56:28,558 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 02:55:52" (2/3) ... [2025-03-03 14:56:28,559 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7d64ebdf and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 03.03 02:56:28, skipping insertion in model container [2025-03-03 14:56:28,559 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 03.03 02:56:28" (3/3) ... [2025-03-03 14:56:28,560 INFO L128 eAbstractionObserver]: Analyzing ICFG rekcba_aso.4.M4.c [2025-03-03 14:56:28,570 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-03-03 14:56:28,573 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG rekcba_aso.4.M4.c that has 24 procedures, 13229 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-03-03 14:56:28,815 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-03-03 14:56:28,822 INFO L333 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, 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;@51f77dc1, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-03-03 14:56:28,823 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-03-03 14:56:28,852 INFO L276 IsEmpty]: Start isEmpty. Operand has 13229 states, 8524 states have (on average 1.3011496949788832) internal successors, (11091), 8637 states have internal predecessors, (11091), 4680 states have call successors, (4680), 23 states have call predecessors, (4680), 23 states have return successors, (4680), 4677 states have call predecessors, (4680), 4680 states have call successors, (4680) [2025-03-03 14:56:29,311 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 8469 [2025-03-03 14:56:29,311 INFO L210 NwaCegarLoop]: Found error trace [2025-03-03 14:56:29,315 INFO L218 NwaCegarLoop]: trace histogram [979, 979, 979, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-03 14:56:29,315 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-03 14:56:29,320 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-03 14:56:29,323 INFO L85 PathProgramCache]: Analyzing trace with hash 803605184, now seen corresponding path program 1 times [2025-03-03 14:56:29,327 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-03 14:56:29,328 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [952439481] [2025-03-03 14:56:29,329 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-03 14:56:29,330 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms