./Ultimate.py --spec ../sv-benchmarks/c/properties/termination.prp --file ../sv-benchmarks/c/recursified_loop-simple/recursified_nested_4.c --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for termination Using default analysis Version 551b0097 Calling Ultimate with: /root/.sdkman/candidates/java/21.0.5-tem/bin/java -Dosgi.configuration.area=/storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.6.800.v20240513-1750.jar -data @noDefault -ultimatedata /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/AutomizerTermination.xml -i ../sv-benchmarks/c/recursified_loop-simple/recursified_nested_4.c -s /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-Termination-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(F end) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash 45898d4df949634911027a72c0e1c79e1edaab63547cca5c16238cef1218e556 --- Real Ultimate output --- This is Ultimate 0.3.0-?-551b009-m [2025-01-10 07:51:03,558 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-01-10 07:51:03,599 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-Termination-32bit-Automizer_Default.epf [2025-01-10 07:51:03,603 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-01-10 07:51:03,603 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-01-10 07:51:03,627 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-01-10 07:51:03,627 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-01-10 07:51:03,627 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-01-10 07:51:03,627 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-01-10 07:51:03,627 INFO L153 SettingsManager]: * Use memory slicer=true [2025-01-10 07:51:03,632 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-01-10 07:51:03,632 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-01-10 07:51:03,632 INFO L153 SettingsManager]: * Use SBE=true [2025-01-10 07:51:03,632 INFO L151 SettingsManager]: Preferences of BuchiAutomizer differ from their defaults: [2025-01-10 07:51:03,632 INFO L153 SettingsManager]: * NCSB implementation=INTSET_LAZY3 [2025-01-10 07:51:03,632 INFO L153 SettingsManager]: * Use old map elimination=false [2025-01-10 07:51:03,632 INFO L153 SettingsManager]: * Use external solver (rank synthesis)=false [2025-01-10 07:51:03,632 INFO L153 SettingsManager]: * Use only trivial implications for array writes=true [2025-01-10 07:51:03,632 INFO L153 SettingsManager]: * Rank analysis=LINEAR_WITH_GUESSES [2025-01-10 07:51:03,632 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-01-10 07:51:03,632 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=ASSUME [2025-01-10 07:51:03,632 INFO L153 SettingsManager]: * sizeof long=4 [2025-01-10 07:51:03,632 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-01-10 07:51:03,632 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-01-10 07:51:03,632 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-01-10 07:51:03,632 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=ASSUME [2025-01-10 07:51:03,632 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=ASSUME [2025-01-10 07:51:03,633 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=ASSUME [2025-01-10 07:51:03,633 INFO L153 SettingsManager]: * Check unreachability of reach_error function=false [2025-01-10 07:51:03,633 INFO L153 SettingsManager]: * sizeof long double=12 [2025-01-10 07:51:03,633 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-01-10 07:51:03,633 INFO L153 SettingsManager]: * Assume nondeterminstic values are in range=false [2025-01-10 07:51:03,633 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-01-10 07:51:03,633 INFO L153 SettingsManager]: * Use constant arrays=true [2025-01-10 07:51:03,633 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2025-01-10 07:51:03,633 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-01-10 07:51:03,633 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-01-10 07:51:03,633 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-01-10 07:51:03,633 INFO L151 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2025-01-10 07:51:03,633 INFO L153 SettingsManager]: * TransformationType=MODULO_NEIGHBOR 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-jdk21/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(F end) ) 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 -> 45898d4df949634911027a72c0e1c79e1edaab63547cca5c16238cef1218e556 [2025-01-10 07:51:03,807 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-01-10 07:51:03,812 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-01-10 07:51:03,813 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-01-10 07:51:03,814 INFO L270 PluginConnector]: Initializing CDTParser... [2025-01-10 07:51:03,814 INFO L274 PluginConnector]: CDTParser initialized [2025-01-10 07:51:03,815 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/recursified_loop-simple/recursified_nested_4.c [2025-01-10 07:51:05,065 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/0238041ad/167a8f2c3c4e44fead17ad3a866a42aa/FLAG07d022f70 [2025-01-10 07:51:05,400 INFO L384 CDTParser]: Found 1 translation units. [2025-01-10 07:51:05,400 INFO L180 CDTParser]: Scanning /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/recursified_loop-simple/recursified_nested_4.c [2025-01-10 07:51:05,409 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/0238041ad/167a8f2c3c4e44fead17ad3a866a42aa/FLAG07d022f70 [2025-01-10 07:51:05,701 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/0238041ad/167a8f2c3c4e44fead17ad3a866a42aa [2025-01-10 07:51:05,704 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-01-10 07:51:05,706 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-01-10 07:51:05,707 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-01-10 07:51:05,707 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-01-10 07:51:05,715 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-01-10 07:51:05,716 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 10.01 07:51:05" (1/1) ... [2025-01-10 07:51:05,717 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@35f16c2c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.01 07:51:05, skipping insertion in model container [2025-01-10 07:51:05,717 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 10.01 07:51:05" (1/1) ... [2025-01-10 07:51:05,739 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-01-10 07:51:05,924 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-01-10 07:51:05,940 INFO L200 MainTranslator]: Completed pre-run [2025-01-10 07:51:05,953 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-01-10 07:51:05,964 INFO L204 MainTranslator]: Completed translation [2025-01-10 07:51:05,964 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.01 07:51:05 WrapperNode [2025-01-10 07:51:05,964 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-01-10 07:51:05,965 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-01-10 07:51:05,965 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-01-10 07:51:05,965 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-01-10 07:51:05,970 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.01 07:51:05" (1/1) ... [2025-01-10 07:51:05,974 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.01 07:51:05" (1/1) ... [2025-01-10 07:51:05,986 INFO L138 Inliner]: procedures = 15, calls = 52, calls flagged for inlining = 3, calls inlined = 3, statements flattened = 67 [2025-01-10 07:51:05,987 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-01-10 07:51:05,988 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-01-10 07:51:05,988 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-01-10 07:51:05,988 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-01-10 07:51:05,994 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.01 07:51:05" (1/1) ... [2025-01-10 07:51:05,995 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.01 07:51:05" (1/1) ... [2025-01-10 07:51:05,996 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.01 07:51:05" (1/1) ... [2025-01-10 07:51:06,017 INFO L175 MemorySlicer]: Split 26 memory accesses to 5 slices as follows [2, 6, 6, 6, 6]. 23 percent of accesses are in the largest equivalence class. The 6 initializations are split as follows [2, 1, 1, 1, 1]. The 8 writes are split as follows [0, 2, 2, 2, 2]. [2025-01-10 07:51:06,019 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.01 07:51:05" (1/1) ... [2025-01-10 07:51:06,019 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.01 07:51:05" (1/1) ... [2025-01-10 07:51:06,026 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.01 07:51:05" (1/1) ... [2025-01-10 07:51:06,031 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.01 07:51:05" (1/1) ... [2025-01-10 07:51:06,033 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.01 07:51:05" (1/1) ... [2025-01-10 07:51:06,033 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.01 07:51:05" (1/1) ... [2025-01-10 07:51:06,034 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.01 07:51:05" (1/1) ... [2025-01-10 07:51:06,036 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-01-10 07:51:06,040 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2025-01-10 07:51:06,041 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2025-01-10 07:51:06,041 INFO L274 PluginConnector]: RCFGBuilder initialized [2025-01-10 07:51:06,042 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.01 07:51:05" (1/1) ... [2025-01-10 07:51:06,049 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:51:06,067 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:51:06,081 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-01-10 07:51:06,092 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (1)] Waiting until timeout for monitored process [2025-01-10 07:51:06,111 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-01-10 07:51:06,111 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2025-01-10 07:51:06,111 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#1 [2025-01-10 07:51:06,111 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#2 [2025-01-10 07:51:06,112 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#3 [2025-01-10 07:51:06,112 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#4 [2025-01-10 07:51:06,112 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2025-01-10 07:51:06,112 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#0 [2025-01-10 07:51:06,112 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#1 [2025-01-10 07:51:06,112 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#2 [2025-01-10 07:51:06,112 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#3 [2025-01-10 07:51:06,112 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#4 [2025-01-10 07:51:06,112 INFO L130 BoogieDeclarations]: Found specification of procedure func_to_recursive_line_24_to_25_0 [2025-01-10 07:51:06,112 INFO L138 BoogieDeclarations]: Found implementation of procedure func_to_recursive_line_24_to_25_0 [2025-01-10 07:51:06,112 INFO L130 BoogieDeclarations]: Found specification of procedure func_to_recursive_line_23_to_24_0 [2025-01-10 07:51:06,112 INFO L138 BoogieDeclarations]: Found implementation of procedure func_to_recursive_line_23_to_24_0 [2025-01-10 07:51:06,113 INFO L130 BoogieDeclarations]: Found specification of procedure func_to_recursive_line_22_to_23_0 [2025-01-10 07:51:06,113 INFO L138 BoogieDeclarations]: Found implementation of procedure func_to_recursive_line_22_to_23_0 [2025-01-10 07:51:06,113 INFO L130 BoogieDeclarations]: Found specification of procedure func_to_recursive_line_25_to_25_0 [2025-01-10 07:51:06,113 INFO L138 BoogieDeclarations]: Found implementation of procedure func_to_recursive_line_25_to_25_0 [2025-01-10 07:51:06,113 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-01-10 07:51:06,113 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-01-10 07:51:06,113 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#0 [2025-01-10 07:51:06,114 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#1 [2025-01-10 07:51:06,114 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#2 [2025-01-10 07:51:06,114 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#3 [2025-01-10 07:51:06,114 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#4 [2025-01-10 07:51:06,114 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2025-01-10 07:51:06,197 INFO L234 CfgBuilder]: Building ICFG [2025-01-10 07:51:06,198 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2025-01-10 07:51:06,391 INFO L? ?]: Removed 12 outVars from TransFormulas that were not future-live. [2025-01-10 07:51:06,392 INFO L283 CfgBuilder]: Performing block encoding [2025-01-10 07:51:06,402 INFO L307 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-01-10 07:51:06,403 INFO L312 CfgBuilder]: Removed 0 assume(true) statements. [2025-01-10 07:51:06,403 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 10.01 07:51:06 BoogieIcfgContainer [2025-01-10 07:51:06,403 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2025-01-10 07:51:06,404 INFO L112 PluginConnector]: ------------------------BuchiAutomizer---------------------------- [2025-01-10 07:51:06,404 INFO L270 PluginConnector]: Initializing BuchiAutomizer... [2025-01-10 07:51:06,407 INFO L274 PluginConnector]: BuchiAutomizer initialized [2025-01-10 07:51:06,408 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2025-01-10 07:51:06,408 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "CDTParser AST 10.01 07:51:05" (1/3) ... [2025-01-10 07:51:06,409 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@525b772b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 10.01 07:51:06, skipping insertion in model container [2025-01-10 07:51:06,409 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2025-01-10 07:51:06,409 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.01 07:51:05" (2/3) ... [2025-01-10 07:51:06,409 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@525b772b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 10.01 07:51:06, skipping insertion in model container [2025-01-10 07:51:06,409 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2025-01-10 07:51:06,409 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 10.01 07:51:06" (3/3) ... [2025-01-10 07:51:06,410 INFO L363 chiAutomizerObserver]: Analyzing ICFG recursified_nested_4.c [2025-01-10 07:51:06,452 INFO L306 stractBuchiCegarLoop]: Interprodecural is true [2025-01-10 07:51:06,453 INFO L307 stractBuchiCegarLoop]: Hoare is None [2025-01-10 07:51:06,453 INFO L308 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2025-01-10 07:51:06,453 INFO L309 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2025-01-10 07:51:06,454 INFO L310 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2025-01-10 07:51:06,454 INFO L311 stractBuchiCegarLoop]: Difference is false [2025-01-10 07:51:06,454 INFO L312 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2025-01-10 07:51:06,455 INFO L316 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2025-01-10 07:51:06,458 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 41 states, 28 states have (on average 1.2857142857142858) internal successors, (36), 32 states have internal predecessors, (36), 8 states have call successors, (8), 4 states have call predecessors, (8), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2025-01-10 07:51:06,469 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 18 [2025-01-10 07:51:06,470 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-01-10 07:51:06,470 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-01-10 07:51:06,474 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2025-01-10 07:51:06,475 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-10 07:51:06,475 INFO L338 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2025-01-10 07:51:06,475 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 41 states, 28 states have (on average 1.2857142857142858) internal successors, (36), 32 states have internal predecessors, (36), 8 states have call successors, (8), 4 states have call predecessors, (8), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2025-01-10 07:51:06,477 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 18 [2025-01-10 07:51:06,477 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-01-10 07:51:06,477 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-01-10 07:51:06,477 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2025-01-10 07:51:06,477 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-10 07:51:06,482 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~mem16#1, main_#t~mem17#1, main_#t~short18#1, main_#t~mem19#1, main_#t~short20#1, main_#t~mem21#1, main_#t~short22#1, main_~#a~0#1.base, main_~#a~0#1.offset, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#c~0#1.base, main_~#c~0#1.offset, main_~#d~0#1.base, main_~#d~0#1.offset;call main_~#a~0#1.base, main_~#a~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#2(6, main_~#a~0#1.base, main_~#a~0#1.offset, 4);call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#1(6, main_~#b~0#1.base, main_~#b~0#1.offset, 4);call main_~#c~0#1.base, main_~#c~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#3(6, main_~#c~0#1.base, main_~#c~0#1.offset, 4);call main_~#d~0#1.base, main_~#d~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#4(6, main_~#d~0#1.base, main_~#d~0#1.offset, 4);call write~int#2(0, main_~#a~0#1.base, main_~#a~0#1.offset, 4);" "call func_to_recursive_line_22_to_23_0(main_~#b~0#1.base, main_~#b~0#1.offset, main_~#d~0#1.base, main_~#d~0#1.offset, main_~#c~0#1.base, main_~#c~0#1.offset, main_~#a~0#1.base, main_~#a~0#1.offset);"< [2025-01-10 07:51:06,483 INFO L754 eck$LassoCheckResult]: Loop: "~b.base, ~b.offset := #in~b.base, #in~b.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~a.base, ~a.offset := #in~a.base, #in~a.offset;call #t~mem13 := read~int#2(~a.base, ~a.offset, 4);" "assume #t~mem13 < 6;havoc #t~mem13;call write~int#1(0, ~b.base, ~b.offset, 4);" "call func_to_recursive_line_23_to_24_0(~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);"< "~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#1(~b.base, ~b.offset, 4);" "assume !(#t~mem10 < 6);havoc #t~mem10;" "assume true;" >"#88#return;" "call #t~mem14 := read~int#2(~a.base, ~a.offset, 4);#t~pre15 := 1 + #t~mem14;call write~int#2(1 + #t~mem14, ~a.base, ~a.offset, 4);havoc #t~mem14;havoc #t~pre15;" "call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~d.base, ~d.offset, ~c.base, ~c.offset, ~a.base, ~a.offset);"< [2025-01-10 07:51:06,486 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:51:06,486 INFO L85 PathProgramCache]: Analyzing trace with hash 71610, now seen corresponding path program 1 times [2025-01-10 07:51:06,491 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:51:06,492 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [604401478] [2025-01-10 07:51:06,492 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-10 07:51:06,492 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:51:06,547 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 3 statements into 1 equivalence classes. [2025-01-10 07:51:06,585 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-01-10 07:51:06,587 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:51:06,587 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:51:06,587 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:51:06,592 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 3 statements into 1 equivalence classes. [2025-01-10 07:51:06,609 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-01-10 07:51:06,611 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:51:06,612 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:51:06,627 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:51:06,629 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:51:06,629 INFO L85 PathProgramCache]: Analyzing trace with hash -448633028, now seen corresponding path program 1 times [2025-01-10 07:51:06,630 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:51:06,630 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1442808593] [2025-01-10 07:51:06,630 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-10 07:51:06,630 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:51:06,641 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 9 statements into 1 equivalence classes. [2025-01-10 07:51:06,651 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 9 of 9 statements. [2025-01-10 07:51:06,653 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:51:06,653 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:51:07,024 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-01-10 07:51:07,024 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-10 07:51:07,024 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1442808593] [2025-01-10 07:51:07,026 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1442808593] provided 1 perfect and 0 imperfect interpolant sequences [2025-01-10 07:51:07,026 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-01-10 07:51:07,026 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2025-01-10 07:51:07,026 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1936293482] [2025-01-10 07:51:07,027 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-01-10 07:51:07,029 INFO L769 eck$LassoCheckResult]: loop already infeasible [2025-01-10 07:51:07,029 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-10 07:51:07,046 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2025-01-10 07:51:07,046 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2025-01-10 07:51:07,048 INFO L87 Difference]: Start difference. First operand has 41 states, 28 states have (on average 1.2857142857142858) internal successors, (36), 32 states have internal predecessors, (36), 8 states have call successors, (8), 4 states have call predecessors, (8), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand has 6 states, 5 states have (on average 1.2) internal successors, (6), 5 states have internal predecessors, (6), 2 states have call successors, (2), 2 states have call predecessors, (2), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2025-01-10 07:51:07,221 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-10 07:51:07,222 INFO L93 Difference]: Finished difference Result 44 states and 55 transitions. [2025-01-10 07:51:07,223 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 44 states and 55 transitions. [2025-01-10 07:51:07,227 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 18 [2025-01-10 07:51:07,233 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 44 states to 29 states and 35 transitions. [2025-01-10 07:51:07,234 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 29 [2025-01-10 07:51:07,235 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 29 [2025-01-10 07:51:07,235 INFO L73 IsDeterministic]: Start isDeterministic. Operand 29 states and 35 transitions. [2025-01-10 07:51:07,236 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2025-01-10 07:51:07,236 INFO L218 hiAutomatonCegarLoop]: Abstraction has 29 states and 35 transitions. [2025-01-10 07:51:07,244 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 29 states and 35 transitions. [2025-01-10 07:51:07,251 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 29 to 29. [2025-01-10 07:51:07,253 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 29 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 20 states have internal predecessors, (20), 8 states have call successors, (8), 4 states have call predecessors, (8), 4 states have return successors, (7), 6 states have call predecessors, (7), 6 states have call successors, (7) [2025-01-10 07:51:07,254 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 35 transitions. [2025-01-10 07:51:07,255 INFO L240 hiAutomatonCegarLoop]: Abstraction has 29 states and 35 transitions. [2025-01-10 07:51:07,256 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2025-01-10 07:51:07,259 INFO L432 stractBuchiCegarLoop]: Abstraction has 29 states and 35 transitions. [2025-01-10 07:51:07,260 INFO L338 stractBuchiCegarLoop]: ======== Iteration 2 ============ [2025-01-10 07:51:07,260 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 29 states and 35 transitions. [2025-01-10 07:51:07,261 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 18 [2025-01-10 07:51:07,262 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-01-10 07:51:07,262 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-01-10 07:51:07,262 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2025-01-10 07:51:07,262 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-10 07:51:07,263 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~mem16#1, main_#t~mem17#1, main_#t~short18#1, main_#t~mem19#1, main_#t~short20#1, main_#t~mem21#1, main_#t~short22#1, main_~#a~0#1.base, main_~#a~0#1.offset, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#c~0#1.base, main_~#c~0#1.offset, main_~#d~0#1.base, main_~#d~0#1.offset;call main_~#a~0#1.base, main_~#a~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#2(6, main_~#a~0#1.base, main_~#a~0#1.offset, 4);call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#1(6, main_~#b~0#1.base, main_~#b~0#1.offset, 4);call main_~#c~0#1.base, main_~#c~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#3(6, main_~#c~0#1.base, main_~#c~0#1.offset, 4);call main_~#d~0#1.base, main_~#d~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#4(6, main_~#d~0#1.base, main_~#d~0#1.offset, 4);call write~int#2(0, main_~#a~0#1.base, main_~#a~0#1.offset, 4);" "call func_to_recursive_line_22_to_23_0(main_~#b~0#1.base, main_~#b~0#1.offset, main_~#d~0#1.base, main_~#d~0#1.offset, main_~#c~0#1.base, main_~#c~0#1.offset, main_~#a~0#1.base, main_~#a~0#1.offset);"< [2025-01-10 07:51:07,264 INFO L754 eck$LassoCheckResult]: Loop: "~b.base, ~b.offset := #in~b.base, #in~b.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~a.base, ~a.offset := #in~a.base, #in~a.offset;call #t~mem13 := read~int#2(~a.base, ~a.offset, 4);" "assume #t~mem13 < 6;havoc #t~mem13;call write~int#1(0, ~b.base, ~b.offset, 4);" "call func_to_recursive_line_23_to_24_0(~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);"< "~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#1(~b.base, ~b.offset, 4);" "assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~c.base, ~c.offset, 4);" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume !(#t~mem7 < 6);havoc #t~mem7;" "assume true;" >"#84#return;" "call #t~mem11 := read~int#1(~b.base, ~b.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#1(1 + #t~mem11, ~b.base, ~b.offset, 4);havoc #t~mem11;havoc #t~pre12;" "call func_to_recursive_line_23_to_24_0(~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);"< "~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#1(~b.base, ~b.offset, 4);" "assume !(#t~mem10 < 6);havoc #t~mem10;" "assume true;" >"#86#return;" "assume true;" >"#88#return;" "call #t~mem14 := read~int#2(~a.base, ~a.offset, 4);#t~pre15 := 1 + #t~mem14;call write~int#2(1 + #t~mem14, ~a.base, ~a.offset, 4);havoc #t~mem14;havoc #t~pre15;" "call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~d.base, ~d.offset, ~c.base, ~c.offset, ~a.base, ~a.offset);"< [2025-01-10 07:51:07,264 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:51:07,264 INFO L85 PathProgramCache]: Analyzing trace with hash 71610, now seen corresponding path program 2 times [2025-01-10 07:51:07,265 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:51:07,265 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [552361770] [2025-01-10 07:51:07,265 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-01-10 07:51:07,265 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:51:07,275 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 3 statements into 1 equivalence classes. [2025-01-10 07:51:07,288 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-01-10 07:51:07,290 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2025-01-10 07:51:07,290 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:51:07,290 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:51:07,292 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 3 statements into 1 equivalence classes. [2025-01-10 07:51:07,297 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-01-10 07:51:07,297 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:51:07,297 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:51:07,303 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:51:07,304 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:51:07,305 INFO L85 PathProgramCache]: Analyzing trace with hash 1860565822, now seen corresponding path program 1 times [2025-01-10 07:51:07,305 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:51:07,305 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1642074325] [2025-01-10 07:51:07,305 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-10 07:51:07,305 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:51:07,318 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 20 statements into 1 equivalence classes. [2025-01-10 07:51:07,326 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 20 of 20 statements. [2025-01-10 07:51:07,329 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:51:07,329 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:51:07,600 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2025-01-10 07:51:07,601 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-10 07:51:07,601 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1642074325] [2025-01-10 07:51:07,601 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1642074325] provided 1 perfect and 0 imperfect interpolant sequences [2025-01-10 07:51:07,601 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-01-10 07:51:07,601 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2025-01-10 07:51:07,601 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1939550089] [2025-01-10 07:51:07,601 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-01-10 07:51:07,601 INFO L769 eck$LassoCheckResult]: loop already infeasible [2025-01-10 07:51:07,601 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-10 07:51:07,601 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2025-01-10 07:51:07,602 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2025-01-10 07:51:07,602 INFO L87 Difference]: Start difference. First operand 29 states and 35 transitions. cyclomatic complexity: 10 Second operand has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (3), 1 states have call predecessors, (3), 3 states have call successors, (3) [2025-01-10 07:51:07,724 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-10 07:51:07,726 INFO L93 Difference]: Finished difference Result 31 states and 37 transitions. [2025-01-10 07:51:07,726 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 31 states and 37 transitions. [2025-01-10 07:51:07,727 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 18 [2025-01-10 07:51:07,728 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 31 states to 31 states and 37 transitions. [2025-01-10 07:51:07,730 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 31 [2025-01-10 07:51:07,730 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 31 [2025-01-10 07:51:07,730 INFO L73 IsDeterministic]: Start isDeterministic. Operand 31 states and 37 transitions. [2025-01-10 07:51:07,731 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2025-01-10 07:51:07,731 INFO L218 hiAutomatonCegarLoop]: Abstraction has 31 states and 37 transitions. [2025-01-10 07:51:07,731 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 31 states and 37 transitions. [2025-01-10 07:51:07,732 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 31 to 31. [2025-01-10 07:51:07,734 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 31 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 21 states have internal predecessors, (21), 8 states have call successors, (8), 4 states have call predecessors, (8), 5 states have return successors, (8), 6 states have call predecessors, (8), 6 states have call successors, (8) [2025-01-10 07:51:07,735 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 37 transitions. [2025-01-10 07:51:07,735 INFO L240 hiAutomatonCegarLoop]: Abstraction has 31 states and 37 transitions. [2025-01-10 07:51:07,736 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2025-01-10 07:51:07,737 INFO L432 stractBuchiCegarLoop]: Abstraction has 31 states and 37 transitions. [2025-01-10 07:51:07,737 INFO L338 stractBuchiCegarLoop]: ======== Iteration 3 ============ [2025-01-10 07:51:07,738 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 31 states and 37 transitions. [2025-01-10 07:51:07,738 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 18 [2025-01-10 07:51:07,739 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-01-10 07:51:07,739 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-01-10 07:51:07,740 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2025-01-10 07:51:07,741 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-10 07:51:07,741 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~mem16#1, main_#t~mem17#1, main_#t~short18#1, main_#t~mem19#1, main_#t~short20#1, main_#t~mem21#1, main_#t~short22#1, main_~#a~0#1.base, main_~#a~0#1.offset, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#c~0#1.base, main_~#c~0#1.offset, main_~#d~0#1.base, main_~#d~0#1.offset;call main_~#a~0#1.base, main_~#a~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#2(6, main_~#a~0#1.base, main_~#a~0#1.offset, 4);call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#1(6, main_~#b~0#1.base, main_~#b~0#1.offset, 4);call main_~#c~0#1.base, main_~#c~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#3(6, main_~#c~0#1.base, main_~#c~0#1.offset, 4);call main_~#d~0#1.base, main_~#d~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#4(6, main_~#d~0#1.base, main_~#d~0#1.offset, 4);call write~int#2(0, main_~#a~0#1.base, main_~#a~0#1.offset, 4);" "call func_to_recursive_line_22_to_23_0(main_~#b~0#1.base, main_~#b~0#1.offset, main_~#d~0#1.base, main_~#d~0#1.offset, main_~#c~0#1.base, main_~#c~0#1.offset, main_~#a~0#1.base, main_~#a~0#1.offset);"< [2025-01-10 07:51:07,741 INFO L754 eck$LassoCheckResult]: Loop: "~b.base, ~b.offset := #in~b.base, #in~b.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~a.base, ~a.offset := #in~a.base, #in~a.offset;call #t~mem13 := read~int#2(~a.base, ~a.offset, 4);" "assume #t~mem13 < 6;havoc #t~mem13;call write~int#1(0, ~b.base, ~b.offset, 4);" "call func_to_recursive_line_23_to_24_0(~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);"< "~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#1(~b.base, ~b.offset, 4);" "assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~c.base, ~c.offset, 4);" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume !(#t~mem7 < 6);havoc #t~mem7;" "assume true;" >"#82#return;" "assume true;" >"#84#return;" "call #t~mem11 := read~int#1(~b.base, ~b.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#1(1 + #t~mem11, ~b.base, ~b.offset, 4);havoc #t~mem11;havoc #t~pre12;" "call func_to_recursive_line_23_to_24_0(~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);"< "~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#1(~b.base, ~b.offset, 4);" "assume !(#t~mem10 < 6);havoc #t~mem10;" "assume true;" >"#86#return;" "assume true;" >"#88#return;" "call #t~mem14 := read~int#2(~a.base, ~a.offset, 4);#t~pre15 := 1 + #t~mem14;call write~int#2(1 + #t~mem14, ~a.base, ~a.offset, 4);havoc #t~mem14;havoc #t~pre15;" "call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~d.base, ~d.offset, ~c.base, ~c.offset, ~a.base, ~a.offset);"< [2025-01-10 07:51:07,741 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:51:07,742 INFO L85 PathProgramCache]: Analyzing trace with hash 71610, now seen corresponding path program 3 times [2025-01-10 07:51:07,742 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:51:07,742 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1971398412] [2025-01-10 07:51:07,742 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-01-10 07:51:07,742 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:51:07,748 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 3 statements into 1 equivalence classes. [2025-01-10 07:51:07,759 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-01-10 07:51:07,760 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) [2025-01-10 07:51:07,760 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:51:07,760 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:51:07,764 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 3 statements into 1 equivalence classes. [2025-01-10 07:51:07,770 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-01-10 07:51:07,772 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:51:07,774 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:51:07,777 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:51:07,778 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:51:07,778 INFO L85 PathProgramCache]: Analyzing trace with hash -1780666575, now seen corresponding path program 1 times [2025-01-10 07:51:07,778 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:51:07,779 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1980135884] [2025-01-10 07:51:07,779 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-10 07:51:07,779 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:51:07,790 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 31 statements into 1 equivalence classes. [2025-01-10 07:51:07,803 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 31 of 31 statements. [2025-01-10 07:51:07,803 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:51:07,803 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:51:08,168 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2025-01-10 07:51:08,169 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-10 07:51:08,169 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1980135884] [2025-01-10 07:51:08,169 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1980135884] provided 1 perfect and 0 imperfect interpolant sequences [2025-01-10 07:51:08,169 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-01-10 07:51:08,169 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2025-01-10 07:51:08,170 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [507565463] [2025-01-10 07:51:08,170 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-01-10 07:51:08,174 INFO L769 eck$LassoCheckResult]: loop already infeasible [2025-01-10 07:51:08,174 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-10 07:51:08,174 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2025-01-10 07:51:08,174 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2025-01-10 07:51:08,174 INFO L87 Difference]: Start difference. First operand 31 states and 37 transitions. cyclomatic complexity: 10 Second operand has 6 states, 5 states have (on average 3.6) internal successors, (18), 5 states have internal predecessors, (18), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (5), 1 states have call predecessors, (5), 3 states have call successors, (5) [2025-01-10 07:51:08,306 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-10 07:51:08,309 INFO L93 Difference]: Finished difference Result 33 states and 39 transitions. [2025-01-10 07:51:08,310 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 33 states and 39 transitions. [2025-01-10 07:51:08,311 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 18 [2025-01-10 07:51:08,311 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 33 states to 33 states and 39 transitions. [2025-01-10 07:51:08,311 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 33 [2025-01-10 07:51:08,312 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 33 [2025-01-10 07:51:08,312 INFO L73 IsDeterministic]: Start isDeterministic. Operand 33 states and 39 transitions. [2025-01-10 07:51:08,312 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2025-01-10 07:51:08,312 INFO L218 hiAutomatonCegarLoop]: Abstraction has 33 states and 39 transitions. [2025-01-10 07:51:08,312 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 33 states and 39 transitions. [2025-01-10 07:51:08,317 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 33 to 33. [2025-01-10 07:51:08,320 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 33 states, 19 states have (on average 1.1578947368421053) internal successors, (22), 22 states have internal predecessors, (22), 8 states have call successors, (8), 4 states have call predecessors, (8), 6 states have return successors, (9), 6 states have call predecessors, (9), 6 states have call successors, (9) [2025-01-10 07:51:08,321 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 39 transitions. [2025-01-10 07:51:08,321 INFO L240 hiAutomatonCegarLoop]: Abstraction has 33 states and 39 transitions. [2025-01-10 07:51:08,322 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2025-01-10 07:51:08,323 INFO L432 stractBuchiCegarLoop]: Abstraction has 33 states and 39 transitions. [2025-01-10 07:51:08,323 INFO L338 stractBuchiCegarLoop]: ======== Iteration 4 ============ [2025-01-10 07:51:08,324 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 33 states and 39 transitions. [2025-01-10 07:51:08,324 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 18 [2025-01-10 07:51:08,327 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-01-10 07:51:08,327 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-01-10 07:51:08,328 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2025-01-10 07:51:08,328 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [2, 2, 2, 2, 2, 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] [2025-01-10 07:51:08,328 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~mem16#1, main_#t~mem17#1, main_#t~short18#1, main_#t~mem19#1, main_#t~short20#1, main_#t~mem21#1, main_#t~short22#1, main_~#a~0#1.base, main_~#a~0#1.offset, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#c~0#1.base, main_~#c~0#1.offset, main_~#d~0#1.base, main_~#d~0#1.offset;call main_~#a~0#1.base, main_~#a~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#2(6, main_~#a~0#1.base, main_~#a~0#1.offset, 4);call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#1(6, main_~#b~0#1.base, main_~#b~0#1.offset, 4);call main_~#c~0#1.base, main_~#c~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#3(6, main_~#c~0#1.base, main_~#c~0#1.offset, 4);call main_~#d~0#1.base, main_~#d~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#4(6, main_~#d~0#1.base, main_~#d~0#1.offset, 4);call write~int#2(0, main_~#a~0#1.base, main_~#a~0#1.offset, 4);" "call func_to_recursive_line_22_to_23_0(main_~#b~0#1.base, main_~#b~0#1.offset, main_~#d~0#1.base, main_~#d~0#1.offset, main_~#c~0#1.base, main_~#c~0#1.offset, main_~#a~0#1.base, main_~#a~0#1.offset);"< [2025-01-10 07:51:08,328 INFO L754 eck$LassoCheckResult]: Loop: "~b.base, ~b.offset := #in~b.base, #in~b.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~a.base, ~a.offset := #in~a.base, #in~a.offset;call #t~mem13 := read~int#2(~a.base, ~a.offset, 4);" "assume #t~mem13 < 6;havoc #t~mem13;call write~int#1(0, ~b.base, ~b.offset, 4);" "call func_to_recursive_line_23_to_24_0(~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);"< "~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#1(~b.base, ~b.offset, 4);" "assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~c.base, ~c.offset, 4);" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume !(#t~mem7 < 6);havoc #t~mem7;" "assume true;" >"#82#return;" "assume true;" >"#84#return;" "call #t~mem11 := read~int#1(~b.base, ~b.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#1(1 + #t~mem11, ~b.base, ~b.offset, 4);havoc #t~mem11;havoc #t~pre12;" "call func_to_recursive_line_23_to_24_0(~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);"< "~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#1(~b.base, ~b.offset, 4);" "assume !(#t~mem10 < 6);havoc #t~mem10;" "assume true;" >"#86#return;" "assume true;" >"#88#return;" "call #t~mem14 := read~int#2(~a.base, ~a.offset, 4);#t~pre15 := 1 + #t~mem14;call write~int#2(1 + #t~mem14, ~a.base, ~a.offset, 4);havoc #t~mem14;havoc #t~pre15;" "call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~d.base, ~d.offset, ~c.base, ~c.offset, ~a.base, ~a.offset);"< [2025-01-10 07:51:08,329 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:51:08,329 INFO L85 PathProgramCache]: Analyzing trace with hash 71610, now seen corresponding path program 4 times [2025-01-10 07:51:08,329 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:51:08,329 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [966166453] [2025-01-10 07:51:08,330 INFO L95 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2025-01-10 07:51:08,331 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:51:08,339 INFO L108 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST partitioned 3 statements into 2 equivalence classes. [2025-01-10 07:51:08,354 INFO L111 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 2 check-sat command(s) and asserted 3 of 3 statements. [2025-01-10 07:51:08,354 INFO L114 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 2 check-sat command(s) [2025-01-10 07:51:08,354 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:51:08,354 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:51:08,358 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 3 statements into 1 equivalence classes. [2025-01-10 07:51:08,364 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-01-10 07:51:08,364 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:51:08,364 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:51:08,368 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:51:08,370 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:51:08,370 INFO L85 PathProgramCache]: Analyzing trace with hash -971158242, now seen corresponding path program 1 times [2025-01-10 07:51:08,371 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:51:08,371 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [241874689] [2025-01-10 07:51:08,371 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-10 07:51:08,371 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:51:08,380 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 36 statements into 1 equivalence classes. [2025-01-10 07:51:08,388 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 36 of 36 statements. [2025-01-10 07:51:08,388 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:51:08,389 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:51:08,902 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 4 proven. 3 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2025-01-10 07:51:08,903 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-10 07:51:08,903 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [241874689] [2025-01-10 07:51:08,903 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [241874689] provided 0 perfect and 1 imperfect interpolant sequences [2025-01-10 07:51:08,924 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1457437848] [2025-01-10 07:51:08,924 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-10 07:51:08,924 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-01-10 07:51:08,924 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:51:08,927 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-01-10 07:51:08,929 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2025-01-10 07:51:08,986 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 36 statements into 1 equivalence classes. [2025-01-10 07:51:09,023 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 36 of 36 statements. [2025-01-10 07:51:09,024 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:51:09,024 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:51:09,027 INFO L256 TraceCheckSpWp]: Trace formula consists of 279 conjuncts, 27 conjuncts are in the unsatisfiable core [2025-01-10 07:51:09,030 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:51:09,083 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 11 treesize of output 7 [2025-01-10 07:51:09,246 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 4 proven. 3 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2025-01-10 07:51:09,246 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-01-10 07:51:09,882 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 4 proven. 4 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2025-01-10 07:51:09,882 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1457437848] provided 0 perfect and 2 imperfect interpolant sequences [2025-01-10 07:51:09,882 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-01-10 07:51:09,882 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9, 10] total 21 [2025-01-10 07:51:09,882 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [458727803] [2025-01-10 07:51:09,882 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-01-10 07:51:09,883 INFO L769 eck$LassoCheckResult]: loop already infeasible [2025-01-10 07:51:09,883 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-10 07:51:09,883 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2025-01-10 07:51:09,883 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=91, Invalid=329, Unknown=0, NotChecked=0, Total=420 [2025-01-10 07:51:09,885 INFO L87 Difference]: Start difference. First operand 33 states and 39 transitions. cyclomatic complexity: 10 Second operand has 21 states, 16 states have (on average 2.3125) internal successors, (37), 18 states have internal predecessors, (37), 7 states have call successors, (12), 5 states have call predecessors, (12), 7 states have return successors, (12), 4 states have call predecessors, (12), 7 states have call successors, (12) [2025-01-10 07:51:10,130 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-10 07:51:10,131 INFO L93 Difference]: Finished difference Result 37 states and 43 transitions. [2025-01-10 07:51:10,131 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 37 states and 43 transitions. [2025-01-10 07:51:10,132 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 18 [2025-01-10 07:51:10,133 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 37 states to 37 states and 43 transitions. [2025-01-10 07:51:10,133 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 37 [2025-01-10 07:51:10,133 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 37 [2025-01-10 07:51:10,133 INFO L73 IsDeterministic]: Start isDeterministic. Operand 37 states and 43 transitions. [2025-01-10 07:51:10,134 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2025-01-10 07:51:10,134 INFO L218 hiAutomatonCegarLoop]: Abstraction has 37 states and 43 transitions. [2025-01-10 07:51:10,134 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 37 states and 43 transitions. [2025-01-10 07:51:10,136 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 37 to 37. [2025-01-10 07:51:10,137 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 37 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 24 states have internal predecessors, (24), 8 states have call successors, (8), 4 states have call predecessors, (8), 8 states have return successors, (11), 8 states have call predecessors, (11), 6 states have call successors, (11) [2025-01-10 07:51:10,137 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 43 transitions. [2025-01-10 07:51:10,137 INFO L240 hiAutomatonCegarLoop]: Abstraction has 37 states and 43 transitions. [2025-01-10 07:51:10,138 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2025-01-10 07:51:10,138 INFO L432 stractBuchiCegarLoop]: Abstraction has 37 states and 43 transitions. [2025-01-10 07:51:10,138 INFO L338 stractBuchiCegarLoop]: ======== Iteration 5 ============ [2025-01-10 07:51:10,138 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 37 states and 43 transitions. [2025-01-10 07:51:10,139 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 18 [2025-01-10 07:51:10,139 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-01-10 07:51:10,139 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-01-10 07:51:10,140 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2025-01-10 07:51:10,140 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [4, 4, 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-10 07:51:10,140 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~mem16#1, main_#t~mem17#1, main_#t~short18#1, main_#t~mem19#1, main_#t~short20#1, main_#t~mem21#1, main_#t~short22#1, main_~#a~0#1.base, main_~#a~0#1.offset, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#c~0#1.base, main_~#c~0#1.offset, main_~#d~0#1.base, main_~#d~0#1.offset;call main_~#a~0#1.base, main_~#a~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#2(6, main_~#a~0#1.base, main_~#a~0#1.offset, 4);call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#1(6, main_~#b~0#1.base, main_~#b~0#1.offset, 4);call main_~#c~0#1.base, main_~#c~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#3(6, main_~#c~0#1.base, main_~#c~0#1.offset, 4);call main_~#d~0#1.base, main_~#d~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#4(6, main_~#d~0#1.base, main_~#d~0#1.offset, 4);call write~int#2(0, main_~#a~0#1.base, main_~#a~0#1.offset, 4);" "call func_to_recursive_line_22_to_23_0(main_~#b~0#1.base, main_~#b~0#1.offset, main_~#d~0#1.base, main_~#d~0#1.offset, main_~#c~0#1.base, main_~#c~0#1.offset, main_~#a~0#1.base, main_~#a~0#1.offset);"< [2025-01-10 07:51:10,140 INFO L754 eck$LassoCheckResult]: Loop: "~b.base, ~b.offset := #in~b.base, #in~b.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~a.base, ~a.offset := #in~a.base, #in~a.offset;call #t~mem13 := read~int#2(~a.base, ~a.offset, 4);" "assume #t~mem13 < 6;havoc #t~mem13;call write~int#1(0, ~b.base, ~b.offset, 4);" "call func_to_recursive_line_23_to_24_0(~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);"< "~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#1(~b.base, ~b.offset, 4);" "assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~c.base, ~c.offset, 4);" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume !(#t~mem7 < 6);havoc #t~mem7;" "assume true;" >"#82#return;" "assume true;" >"#84#return;" "call #t~mem11 := read~int#1(~b.base, ~b.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#1(1 + #t~mem11, ~b.base, ~b.offset, 4);havoc #t~mem11;havoc #t~pre12;" "call func_to_recursive_line_23_to_24_0(~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);"< "~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#1(~b.base, ~b.offset, 4);" "assume !(#t~mem10 < 6);havoc #t~mem10;" "assume true;" >"#86#return;" "assume true;" >"#88#return;" "call #t~mem14 := read~int#2(~a.base, ~a.offset, 4);#t~pre15 := 1 + #t~mem14;call write~int#2(1 + #t~mem14, ~a.base, ~a.offset, 4);havoc #t~mem14;havoc #t~pre15;" "call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~d.base, ~d.offset, ~c.base, ~c.offset, ~a.base, ~a.offset);"< [2025-01-10 07:51:10,141 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:51:10,141 INFO L85 PathProgramCache]: Analyzing trace with hash 71610, now seen corresponding path program 5 times [2025-01-10 07:51:10,141 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:51:10,141 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1433762154] [2025-01-10 07:51:10,141 INFO L95 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2025-01-10 07:51:10,141 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:51:10,151 INFO L108 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 partitioned 3 statements into 1 equivalence classes. [2025-01-10 07:51:10,161 INFO L111 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-01-10 07:51:10,162 INFO L114 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2025-01-10 07:51:10,162 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:51:10,162 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:51:10,167 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 3 statements into 1 equivalence classes. [2025-01-10 07:51:10,171 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-01-10 07:51:10,173 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:51:10,174 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:51:10,180 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:51:10,181 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:51:10,181 INFO L85 PathProgramCache]: Analyzing trace with hash -2092880572, now seen corresponding path program 2 times [2025-01-10 07:51:10,181 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:51:10,181 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [542229193] [2025-01-10 07:51:10,181 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-01-10 07:51:10,181 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:51:10,201 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 46 statements into 2 equivalence classes. [2025-01-10 07:51:10,223 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 46 of 46 statements. [2025-01-10 07:51:10,226 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-01-10 07:51:10,227 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:51:11,411 INFO L134 CoverageAnalysis]: Checked inductivity of 35 backedges. 8 proven. 15 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2025-01-10 07:51:11,411 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-10 07:51:11,411 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [542229193] [2025-01-10 07:51:11,412 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [542229193] provided 0 perfect and 1 imperfect interpolant sequences [2025-01-10 07:51:11,412 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [645625846] [2025-01-10 07:51:11,412 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-01-10 07:51:11,412 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-01-10 07:51:11,412 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:51:11,414 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-01-10 07:51:11,416 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2025-01-10 07:51:11,463 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 46 statements into 2 equivalence classes. [2025-01-10 07:51:11,495 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 46 of 46 statements. [2025-01-10 07:51:11,496 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-01-10 07:51:11,496 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:51:11,498 INFO L256 TraceCheckSpWp]: Trace formula consists of 333 conjuncts, 29 conjuncts are in the unsatisfiable core [2025-01-10 07:51:11,501 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:51:11,507 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 11 treesize of output 7 [2025-01-10 07:51:11,698 INFO L134 CoverageAnalysis]: Checked inductivity of 35 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 32 trivial. 0 not checked. [2025-01-10 07:51:11,699 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-01-10 07:51:12,018 INFO L134 CoverageAnalysis]: Checked inductivity of 35 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 31 trivial. 0 not checked. [2025-01-10 07:51:12,018 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [645625846] provided 0 perfect and 2 imperfect interpolant sequences [2025-01-10 07:51:12,018 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-01-10 07:51:12,018 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 9, 10] total 28 [2025-01-10 07:51:12,018 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [860479042] [2025-01-10 07:51:12,018 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-01-10 07:51:12,019 INFO L769 eck$LassoCheckResult]: loop already infeasible [2025-01-10 07:51:12,019 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-10 07:51:12,019 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 28 interpolants. [2025-01-10 07:51:12,019 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=105, Invalid=651, Unknown=0, NotChecked=0, Total=756 [2025-01-10 07:51:12,020 INFO L87 Difference]: Start difference. First operand 37 states and 43 transitions. cyclomatic complexity: 10 Second operand has 28 states, 21 states have (on average 2.238095238095238) internal successors, (47), 24 states have internal predecessors, (47), 11 states have call successors, (17), 6 states have call predecessors, (17), 10 states have return successors, (17), 9 states have call predecessors, (17), 11 states have call successors, (17) [2025-01-10 07:51:12,491 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-10 07:51:12,492 INFO L93 Difference]: Finished difference Result 41 states and 47 transitions. [2025-01-10 07:51:12,492 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 41 states and 47 transitions. [2025-01-10 07:51:12,494 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 18 [2025-01-10 07:51:12,495 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 41 states to 41 states and 47 transitions. [2025-01-10 07:51:12,495 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 41 [2025-01-10 07:51:12,495 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 41 [2025-01-10 07:51:12,495 INFO L73 IsDeterministic]: Start isDeterministic. Operand 41 states and 47 transitions. [2025-01-10 07:51:12,495 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2025-01-10 07:51:12,495 INFO L218 hiAutomatonCegarLoop]: Abstraction has 41 states and 47 transitions. [2025-01-10 07:51:12,496 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 41 states and 47 transitions. [2025-01-10 07:51:12,500 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 41 to 41. [2025-01-10 07:51:12,500 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 41 states, 23 states have (on average 1.1304347826086956) internal successors, (26), 26 states have internal predecessors, (26), 8 states have call successors, (8), 4 states have call predecessors, (8), 10 states have return successors, (13), 10 states have call predecessors, (13), 6 states have call successors, (13) [2025-01-10 07:51:12,501 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 41 states to 41 states and 47 transitions. [2025-01-10 07:51:12,501 INFO L240 hiAutomatonCegarLoop]: Abstraction has 41 states and 47 transitions. [2025-01-10 07:51:12,503 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2025-01-10 07:51:12,504 INFO L432 stractBuchiCegarLoop]: Abstraction has 41 states and 47 transitions. [2025-01-10 07:51:12,504 INFO L338 stractBuchiCegarLoop]: ======== Iteration 6 ============ [2025-01-10 07:51:12,504 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 41 states and 47 transitions. [2025-01-10 07:51:12,504 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 18 [2025-01-10 07:51:12,504 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-01-10 07:51:12,504 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-01-10 07:51:12,506 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2025-01-10 07:51:12,506 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [10, 10, 8, 8, 8, 4, 4, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1] [2025-01-10 07:51:12,506 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~mem16#1, main_#t~mem17#1, main_#t~short18#1, main_#t~mem19#1, main_#t~short20#1, main_#t~mem21#1, main_#t~short22#1, main_~#a~0#1.base, main_~#a~0#1.offset, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#c~0#1.base, main_~#c~0#1.offset, main_~#d~0#1.base, main_~#d~0#1.offset;call main_~#a~0#1.base, main_~#a~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#2(6, main_~#a~0#1.base, main_~#a~0#1.offset, 4);call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#1(6, main_~#b~0#1.base, main_~#b~0#1.offset, 4);call main_~#c~0#1.base, main_~#c~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#3(6, main_~#c~0#1.base, main_~#c~0#1.offset, 4);call main_~#d~0#1.base, main_~#d~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#4(6, main_~#d~0#1.base, main_~#d~0#1.offset, 4);call write~int#2(0, main_~#a~0#1.base, main_~#a~0#1.offset, 4);" "call func_to_recursive_line_22_to_23_0(main_~#b~0#1.base, main_~#b~0#1.offset, main_~#d~0#1.base, main_~#d~0#1.offset, main_~#c~0#1.base, main_~#c~0#1.offset, main_~#a~0#1.base, main_~#a~0#1.offset);"< [2025-01-10 07:51:12,506 INFO L754 eck$LassoCheckResult]: Loop: "~b.base, ~b.offset := #in~b.base, #in~b.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~a.base, ~a.offset := #in~a.base, #in~a.offset;call #t~mem13 := read~int#2(~a.base, ~a.offset, 4);" "assume #t~mem13 < 6;havoc #t~mem13;call write~int#1(0, ~b.base, ~b.offset, 4);" "call func_to_recursive_line_23_to_24_0(~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);"< "~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#1(~b.base, ~b.offset, 4);" "assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~c.base, ~c.offset, 4);" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume !(#t~mem7 < 6);havoc #t~mem7;" "assume true;" >"#82#return;" "assume true;" >"#84#return;" "call #t~mem11 := read~int#1(~b.base, ~b.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#1(1 + #t~mem11, ~b.base, ~b.offset, 4);havoc #t~mem11;havoc #t~pre12;" "call func_to_recursive_line_23_to_24_0(~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);"< "~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#1(~b.base, ~b.offset, 4);" "assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~c.base, ~c.offset, 4);" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume !(#t~mem7 < 6);havoc #t~mem7;" "assume true;" >"#82#return;" "assume true;" >"#84#return;" "call #t~mem11 := read~int#1(~b.base, ~b.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#1(1 + #t~mem11, ~b.base, ~b.offset, 4);havoc #t~mem11;havoc #t~pre12;" "call func_to_recursive_line_23_to_24_0(~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);"< "~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#1(~b.base, ~b.offset, 4);" "assume !(#t~mem10 < 6);havoc #t~mem10;" "assume true;" >"#86#return;" "assume true;" >"#86#return;" "assume true;" >"#88#return;" "call #t~mem14 := read~int#2(~a.base, ~a.offset, 4);#t~pre15 := 1 + #t~mem14;call write~int#2(1 + #t~mem14, ~a.base, ~a.offset, 4);havoc #t~mem14;havoc #t~pre15;" "call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~d.base, ~d.offset, ~c.base, ~c.offset, ~a.base, ~a.offset);"< [2025-01-10 07:51:12,508 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:51:12,508 INFO L85 PathProgramCache]: Analyzing trace with hash 71610, now seen corresponding path program 6 times [2025-01-10 07:51:12,508 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:51:12,508 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [712250309] [2025-01-10 07:51:12,508 INFO L95 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2025-01-10 07:51:12,508 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:51:12,513 INFO L108 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE partitioned 3 statements into 1 equivalence classes. [2025-01-10 07:51:12,518 INFO L111 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-01-10 07:51:12,521 INFO L114 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE issued 1 check-sat command(s) [2025-01-10 07:51:12,521 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:51:12,521 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:51:12,522 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 3 statements into 1 equivalence classes. [2025-01-10 07:51:12,524 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-01-10 07:51:12,524 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:51:12,524 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:51:12,527 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:51:12,528 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:51:12,528 INFO L85 PathProgramCache]: Analyzing trace with hash -501865090, now seen corresponding path program 3 times [2025-01-10 07:51:12,529 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:51:12,529 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [698531406] [2025-01-10 07:51:12,529 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-01-10 07:51:12,529 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:51:12,543 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 93 statements into 8 equivalence classes. [2025-01-10 07:51:12,555 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 3 check-sat command(s) and asserted 42 of 93 statements. [2025-01-10 07:51:12,555 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 3 check-sat command(s) [2025-01-10 07:51:12,555 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:51:12,963 INFO L134 CoverageAnalysis]: Checked inductivity of 250 backedges. 26 proven. 3 refuted. 0 times theorem prover too weak. 221 trivial. 0 not checked. [2025-01-10 07:51:12,963 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-10 07:51:12,963 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [698531406] [2025-01-10 07:51:12,963 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [698531406] provided 0 perfect and 1 imperfect interpolant sequences [2025-01-10 07:51:12,963 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1361088907] [2025-01-10 07:51:12,963 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-01-10 07:51:12,963 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-01-10 07:51:12,963 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:51:12,966 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-01-10 07:51:12,968 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2025-01-10 07:51:13,027 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 93 statements into 8 equivalence classes. [2025-01-10 07:51:13,058 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 3 check-sat command(s) and asserted 42 of 93 statements. [2025-01-10 07:51:13,059 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 3 check-sat command(s) [2025-01-10 07:51:13,059 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:51:13,060 INFO L256 TraceCheckSpWp]: Trace formula consists of 336 conjuncts, 40 conjuncts are in the unsatisfiable core [2025-01-10 07:51:13,064 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:51:13,070 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 11 treesize of output 7 [2025-01-10 07:51:13,411 INFO L134 CoverageAnalysis]: Checked inductivity of 250 backedges. 0 proven. 8 refuted. 0 times theorem prover too weak. 242 trivial. 0 not checked. [2025-01-10 07:51:13,412 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-01-10 07:51:14,116 INFO L134 CoverageAnalysis]: Checked inductivity of 250 backedges. 0 proven. 15 refuted. 0 times theorem prover too weak. 235 trivial. 0 not checked. [2025-01-10 07:51:14,117 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1361088907] provided 0 perfect and 2 imperfect interpolant sequences [2025-01-10 07:51:14,117 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-01-10 07:51:14,117 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 10, 14] total 29 [2025-01-10 07:51:14,117 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [57721679] [2025-01-10 07:51:14,117 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-01-10 07:51:14,117 INFO L769 eck$LassoCheckResult]: loop already infeasible [2025-01-10 07:51:14,117 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-10 07:51:14,118 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 29 interpolants. [2025-01-10 07:51:14,118 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=129, Invalid=683, Unknown=0, NotChecked=0, Total=812 [2025-01-10 07:51:14,118 INFO L87 Difference]: Start difference. First operand 41 states and 47 transitions. cyclomatic complexity: 10 Second operand has 29 states, 22 states have (on average 2.1818181818181817) internal successors, (48), 24 states have internal predecessors, (48), 13 states have call successors, (19), 7 states have call predecessors, (19), 10 states have return successors, (19), 11 states have call predecessors, (19), 13 states have call successors, (19) [2025-01-10 07:51:14,532 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-10 07:51:14,533 INFO L93 Difference]: Finished difference Result 45 states and 51 transitions. [2025-01-10 07:51:14,533 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 45 states and 51 transitions. [2025-01-10 07:51:14,534 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 18 [2025-01-10 07:51:14,534 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 45 states to 45 states and 51 transitions. [2025-01-10 07:51:14,535 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 45 [2025-01-10 07:51:14,535 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 45 [2025-01-10 07:51:14,535 INFO L73 IsDeterministic]: Start isDeterministic. Operand 45 states and 51 transitions. [2025-01-10 07:51:14,535 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2025-01-10 07:51:14,535 INFO L218 hiAutomatonCegarLoop]: Abstraction has 45 states and 51 transitions. [2025-01-10 07:51:14,535 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 45 states and 51 transitions. [2025-01-10 07:51:14,537 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 45 to 45. [2025-01-10 07:51:14,537 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 45 states, 25 states have (on average 1.12) internal successors, (28), 28 states have internal predecessors, (28), 8 states have call successors, (8), 4 states have call predecessors, (8), 12 states have return successors, (15), 12 states have call predecessors, (15), 6 states have call successors, (15) [2025-01-10 07:51:14,538 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 45 states to 45 states and 51 transitions. [2025-01-10 07:51:14,538 INFO L240 hiAutomatonCegarLoop]: Abstraction has 45 states and 51 transitions. [2025-01-10 07:51:14,538 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2025-01-10 07:51:14,539 INFO L432 stractBuchiCegarLoop]: Abstraction has 45 states and 51 transitions. [2025-01-10 07:51:14,539 INFO L338 stractBuchiCegarLoop]: ======== Iteration 7 ============ [2025-01-10 07:51:14,539 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 45 states and 51 transitions. [2025-01-10 07:51:14,539 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 18 [2025-01-10 07:51:14,539 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-01-10 07:51:14,540 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-01-10 07:51:14,542 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2025-01-10 07:51:14,543 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [30, 30, 24, 24, 24, 9, 9, 6, 6, 6, 6, 6, 6, 6, 4, 4, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1] [2025-01-10 07:51:14,543 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~mem16#1, main_#t~mem17#1, main_#t~short18#1, main_#t~mem19#1, main_#t~short20#1, main_#t~mem21#1, main_#t~short22#1, main_~#a~0#1.base, main_~#a~0#1.offset, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#c~0#1.base, main_~#c~0#1.offset, main_~#d~0#1.base, main_~#d~0#1.offset;call main_~#a~0#1.base, main_~#a~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#2(6, main_~#a~0#1.base, main_~#a~0#1.offset, 4);call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#1(6, main_~#b~0#1.base, main_~#b~0#1.offset, 4);call main_~#c~0#1.base, main_~#c~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#3(6, main_~#c~0#1.base, main_~#c~0#1.offset, 4);call main_~#d~0#1.base, main_~#d~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#4(6, main_~#d~0#1.base, main_~#d~0#1.offset, 4);call write~int#2(0, main_~#a~0#1.base, main_~#a~0#1.offset, 4);" "call func_to_recursive_line_22_to_23_0(main_~#b~0#1.base, main_~#b~0#1.offset, main_~#d~0#1.base, main_~#d~0#1.offset, main_~#c~0#1.base, main_~#c~0#1.offset, main_~#a~0#1.base, main_~#a~0#1.offset);"< [2025-01-10 07:51:14,543 INFO L754 eck$LassoCheckResult]: Loop: "~b.base, ~b.offset := #in~b.base, #in~b.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~a.base, ~a.offset := #in~a.base, #in~a.offset;call #t~mem13 := read~int#2(~a.base, ~a.offset, 4);" "assume #t~mem13 < 6;havoc #t~mem13;call write~int#1(0, ~b.base, ~b.offset, 4);" "call func_to_recursive_line_23_to_24_0(~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);"< "~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#1(~b.base, ~b.offset, 4);" "assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~c.base, ~c.offset, 4);" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume !(#t~mem7 < 6);havoc #t~mem7;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#84#return;" "call #t~mem11 := read~int#1(~b.base, ~b.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#1(1 + #t~mem11, ~b.base, ~b.offset, 4);havoc #t~mem11;havoc #t~pre12;" "call func_to_recursive_line_23_to_24_0(~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);"< "~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#1(~b.base, ~b.offset, 4);" "assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~c.base, ~c.offset, 4);" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume !(#t~mem7 < 6);havoc #t~mem7;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#84#return;" "call #t~mem11 := read~int#1(~b.base, ~b.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#1(1 + #t~mem11, ~b.base, ~b.offset, 4);havoc #t~mem11;havoc #t~pre12;" "call func_to_recursive_line_23_to_24_0(~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);"< "~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#1(~b.base, ~b.offset, 4);" "assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~c.base, ~c.offset, 4);" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume !(#t~mem7 < 6);havoc #t~mem7;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#84#return;" "call #t~mem11 := read~int#1(~b.base, ~b.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#1(1 + #t~mem11, ~b.base, ~b.offset, 4);havoc #t~mem11;havoc #t~pre12;" "call func_to_recursive_line_23_to_24_0(~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);"< "~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#1(~b.base, ~b.offset, 4);" "assume !(#t~mem10 < 6);havoc #t~mem10;" "assume true;" >"#86#return;" "assume true;" >"#86#return;" "assume true;" >"#86#return;" "assume true;" >"#88#return;" "call #t~mem14 := read~int#2(~a.base, ~a.offset, 4);#t~pre15 := 1 + #t~mem14;call write~int#2(1 + #t~mem14, ~a.base, ~a.offset, 4);havoc #t~mem14;havoc #t~pre15;" "call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~d.base, ~d.offset, ~c.base, ~c.offset, ~a.base, ~a.offset);"< [2025-01-10 07:51:14,544 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:51:14,544 INFO L85 PathProgramCache]: Analyzing trace with hash 71610, now seen corresponding path program 7 times [2025-01-10 07:51:14,544 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:51:14,544 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2069955635] [2025-01-10 07:51:14,544 INFO L95 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2025-01-10 07:51:14,544 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:51:14,549 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 3 statements into 1 equivalence classes. [2025-01-10 07:51:14,553 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-01-10 07:51:14,553 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:51:14,553 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:51:14,554 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:51:14,555 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 3 statements into 1 equivalence classes. [2025-01-10 07:51:14,557 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-01-10 07:51:14,557 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:51:14,557 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:51:14,559 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:51:14,559 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:51:14,560 INFO L85 PathProgramCache]: Analyzing trace with hash 990602320, now seen corresponding path program 4 times [2025-01-10 07:51:14,560 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:51:14,560 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [339174076] [2025-01-10 07:51:14,560 INFO L95 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2025-01-10 07:51:14,560 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:51:14,580 INFO L108 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST partitioned 228 statements into 2 equivalence classes. [2025-01-10 07:51:14,614 INFO L111 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 1 check-sat command(s) and asserted 228 of 228 statements. [2025-01-10 07:51:14,614 INFO L114 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 1 check-sat command(s) [2025-01-10 07:51:14,614 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:51:16,555 INFO L134 CoverageAnalysis]: Checked inductivity of 2238 backedges. 15 proven. 638 refuted. 0 times theorem prover too weak. 1585 trivial. 0 not checked. [2025-01-10 07:51:16,555 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-10 07:51:16,555 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [339174076] [2025-01-10 07:51:16,556 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [339174076] provided 0 perfect and 1 imperfect interpolant sequences [2025-01-10 07:51:16,556 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1551563904] [2025-01-10 07:51:16,556 INFO L95 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2025-01-10 07:51:16,556 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-01-10 07:51:16,556 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:51:16,558 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-01-10 07:51:16,560 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2025-01-10 07:51:16,659 INFO L108 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST partitioned 228 statements into 2 equivalence classes. [2025-01-10 07:51:16,787 INFO L111 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 1 check-sat command(s) and asserted 228 of 228 statements. [2025-01-10 07:51:16,787 INFO L114 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 1 check-sat command(s) [2025-01-10 07:51:16,787 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:51:16,793 INFO L256 TraceCheckSpWp]: Trace formula consists of 1388 conjuncts, 96 conjuncts are in the unsatisfiable core [2025-01-10 07:51:16,805 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:51:16,869 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 11 treesize of output 7 [2025-01-10 07:51:17,375 INFO L134 CoverageAnalysis]: Checked inductivity of 2238 backedges. 683 proven. 27 refuted. 0 times theorem prover too weak. 1528 trivial. 0 not checked. [2025-01-10 07:51:17,378 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-01-10 07:51:20,772 INFO L134 CoverageAnalysis]: Checked inductivity of 2238 backedges. 633 proven. 46 refuted. 0 times theorem prover too weak. 1559 trivial. 0 not checked. [2025-01-10 07:51:20,772 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1551563904] provided 0 perfect and 2 imperfect interpolant sequences [2025-01-10 07:51:20,773 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-01-10 07:51:20,773 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 14, 22] total 41 [2025-01-10 07:51:20,773 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2140322089] [2025-01-10 07:51:20,773 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-01-10 07:51:20,774 INFO L769 eck$LassoCheckResult]: loop already infeasible [2025-01-10 07:51:20,774 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-10 07:51:20,774 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 41 interpolants. [2025-01-10 07:51:20,775 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=304, Invalid=1336, Unknown=0, NotChecked=0, Total=1640 [2025-01-10 07:51:20,775 INFO L87 Difference]: Start difference. First operand 45 states and 51 transitions. cyclomatic complexity: 10 Second operand has 41 states, 31 states have (on average 2.129032258064516) internal successors, (66), 35 states have internal predecessors, (66), 14 states have call successors, (25), 8 states have call predecessors, (25), 13 states have return successors, (34), 13 states have call predecessors, (34), 14 states have call successors, (34) [2025-01-10 07:51:21,123 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-10 07:51:21,123 INFO L93 Difference]: Finished difference Result 49 states and 55 transitions. [2025-01-10 07:51:21,123 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 49 states and 55 transitions. [2025-01-10 07:51:21,124 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 18 [2025-01-10 07:51:21,125 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 49 states to 49 states and 55 transitions. [2025-01-10 07:51:21,126 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 49 [2025-01-10 07:51:21,126 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 49 [2025-01-10 07:51:21,126 INFO L73 IsDeterministic]: Start isDeterministic. Operand 49 states and 55 transitions. [2025-01-10 07:51:21,126 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2025-01-10 07:51:21,126 INFO L218 hiAutomatonCegarLoop]: Abstraction has 49 states and 55 transitions. [2025-01-10 07:51:21,127 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 49 states and 55 transitions. [2025-01-10 07:51:21,128 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 49 to 49. [2025-01-10 07:51:21,129 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 49 states, 27 states have (on average 1.1111111111111112) internal successors, (30), 30 states have internal predecessors, (30), 8 states have call successors, (8), 4 states have call predecessors, (8), 14 states have return successors, (17), 14 states have call predecessors, (17), 6 states have call successors, (17) [2025-01-10 07:51:21,129 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 49 states to 49 states and 55 transitions. [2025-01-10 07:51:21,129 INFO L240 hiAutomatonCegarLoop]: Abstraction has 49 states and 55 transitions. [2025-01-10 07:51:21,134 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2025-01-10 07:51:21,134 INFO L432 stractBuchiCegarLoop]: Abstraction has 49 states and 55 transitions. [2025-01-10 07:51:21,134 INFO L338 stractBuchiCegarLoop]: ======== Iteration 8 ============ [2025-01-10 07:51:21,134 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 49 states and 55 transitions. [2025-01-10 07:51:21,135 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 18 [2025-01-10 07:51:21,135 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-01-10 07:51:21,135 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-01-10 07:51:21,137 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2025-01-10 07:51:21,137 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [42, 42, 36, 36, 36, 9, 9, 6, 6, 6, 6, 6, 6, 6, 4, 4, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1] [2025-01-10 07:51:21,137 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~mem16#1, main_#t~mem17#1, main_#t~short18#1, main_#t~mem19#1, main_#t~short20#1, main_#t~mem21#1, main_#t~short22#1, main_~#a~0#1.base, main_~#a~0#1.offset, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#c~0#1.base, main_~#c~0#1.offset, main_~#d~0#1.base, main_~#d~0#1.offset;call main_~#a~0#1.base, main_~#a~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#2(6, main_~#a~0#1.base, main_~#a~0#1.offset, 4);call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#1(6, main_~#b~0#1.base, main_~#b~0#1.offset, 4);call main_~#c~0#1.base, main_~#c~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#3(6, main_~#c~0#1.base, main_~#c~0#1.offset, 4);call main_~#d~0#1.base, main_~#d~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#4(6, main_~#d~0#1.base, main_~#d~0#1.offset, 4);call write~int#2(0, main_~#a~0#1.base, main_~#a~0#1.offset, 4);" "call func_to_recursive_line_22_to_23_0(main_~#b~0#1.base, main_~#b~0#1.offset, main_~#d~0#1.base, main_~#d~0#1.offset, main_~#c~0#1.base, main_~#c~0#1.offset, main_~#a~0#1.base, main_~#a~0#1.offset);"< [2025-01-10 07:51:21,138 INFO L754 eck$LassoCheckResult]: Loop: "~b.base, ~b.offset := #in~b.base, #in~b.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~a.base, ~a.offset := #in~a.base, #in~a.offset;call #t~mem13 := read~int#2(~a.base, ~a.offset, 4);" "assume #t~mem13 < 6;havoc #t~mem13;call write~int#1(0, ~b.base, ~b.offset, 4);" "call func_to_recursive_line_23_to_24_0(~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);"< "~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#1(~b.base, ~b.offset, 4);" "assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~c.base, ~c.offset, 4);" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume !(#t~mem7 < 6);havoc #t~mem7;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#84#return;" "call #t~mem11 := read~int#1(~b.base, ~b.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#1(1 + #t~mem11, ~b.base, ~b.offset, 4);havoc #t~mem11;havoc #t~pre12;" "call func_to_recursive_line_23_to_24_0(~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);"< "~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#1(~b.base, ~b.offset, 4);" "assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~c.base, ~c.offset, 4);" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume !(#t~mem7 < 6);havoc #t~mem7;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#84#return;" "call #t~mem11 := read~int#1(~b.base, ~b.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#1(1 + #t~mem11, ~b.base, ~b.offset, 4);havoc #t~mem11;havoc #t~pre12;" "call func_to_recursive_line_23_to_24_0(~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);"< "~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#1(~b.base, ~b.offset, 4);" "assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~c.base, ~c.offset, 4);" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume !(#t~mem7 < 6);havoc #t~mem7;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#84#return;" "call #t~mem11 := read~int#1(~b.base, ~b.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#1(1 + #t~mem11, ~b.base, ~b.offset, 4);havoc #t~mem11;havoc #t~pre12;" "call func_to_recursive_line_23_to_24_0(~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);"< "~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#1(~b.base, ~b.offset, 4);" "assume !(#t~mem10 < 6);havoc #t~mem10;" "assume true;" >"#86#return;" "assume true;" >"#86#return;" "assume true;" >"#86#return;" "assume true;" >"#88#return;" "call #t~mem14 := read~int#2(~a.base, ~a.offset, 4);#t~pre15 := 1 + #t~mem14;call write~int#2(1 + #t~mem14, ~a.base, ~a.offset, 4);havoc #t~mem14;havoc #t~pre15;" "call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~d.base, ~d.offset, ~c.base, ~c.offset, ~a.base, ~a.offset);"< [2025-01-10 07:51:21,138 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:51:21,138 INFO L85 PathProgramCache]: Analyzing trace with hash 71610, now seen corresponding path program 8 times [2025-01-10 07:51:21,138 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:51:21,138 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [738825355] [2025-01-10 07:51:21,138 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-01-10 07:51:21,138 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:51:21,146 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 3 statements into 1 equivalence classes. [2025-01-10 07:51:21,150 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-01-10 07:51:21,150 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2025-01-10 07:51:21,150 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:51:21,150 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:51:21,152 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 3 statements into 1 equivalence classes. [2025-01-10 07:51:21,153 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-01-10 07:51:21,154 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:51:21,154 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:51:21,156 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:51:21,156 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:51:21,156 INFO L85 PathProgramCache]: Analyzing trace with hash 732034000, now seen corresponding path program 5 times [2025-01-10 07:51:21,156 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:51:21,156 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1930161607] [2025-01-10 07:51:21,156 INFO L95 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2025-01-10 07:51:21,156 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:51:21,205 INFO L108 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 partitioned 288 statements into 12 equivalence classes. [2025-01-10 07:51:21,419 INFO L111 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 issued 10 check-sat command(s) and asserted 268 of 288 statements. [2025-01-10 07:51:21,419 INFO L114 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 issued 10 check-sat command(s) [2025-01-10 07:51:21,419 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:51:22,406 INFO L134 CoverageAnalysis]: Checked inductivity of 4296 backedges. 10 proven. 110 refuted. 0 times theorem prover too weak. 4176 trivial. 0 not checked. [2025-01-10 07:51:22,407 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-10 07:51:22,407 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1930161607] [2025-01-10 07:51:22,407 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1930161607] provided 0 perfect and 1 imperfect interpolant sequences [2025-01-10 07:51:22,407 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1363119965] [2025-01-10 07:51:22,407 INFO L95 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2025-01-10 07:51:22,407 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-01-10 07:51:22,407 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:51:22,409 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-01-10 07:51:22,418 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2025-01-10 07:51:22,542 INFO L108 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 partitioned 288 statements into 12 equivalence classes. [2025-01-10 07:51:26,947 INFO L111 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 issued 10 check-sat command(s) and asserted 268 of 288 statements. [2025-01-10 07:51:26,947 INFO L114 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 issued 10 check-sat command(s) [2025-01-10 07:51:26,947 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:51:26,962 INFO L256 TraceCheckSpWp]: Trace formula consists of 1526 conjuncts, 43 conjuncts are in the unsatisfiable core [2025-01-10 07:51:26,971 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:51:26,989 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 15 treesize of output 1 [2025-01-10 07:51:27,196 INFO L134 CoverageAnalysis]: Checked inductivity of 4296 backedges. 2015 proven. 8 refuted. 0 times theorem prover too weak. 2273 trivial. 0 not checked. [2025-01-10 07:51:27,196 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-01-10 07:51:28,658 INFO L134 CoverageAnalysis]: Checked inductivity of 4296 backedges. 59 proven. 66 refuted. 0 times theorem prover too weak. 4171 trivial. 0 not checked. [2025-01-10 07:51:28,658 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1363119965] provided 0 perfect and 2 imperfect interpolant sequences [2025-01-10 07:51:28,658 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-01-10 07:51:28,658 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 10, 14] total 28 [2025-01-10 07:51:28,659 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1758432810] [2025-01-10 07:51:28,659 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-01-10 07:51:28,659 INFO L769 eck$LassoCheckResult]: loop already infeasible [2025-01-10 07:51:28,660 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-10 07:51:28,660 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 28 interpolants. [2025-01-10 07:51:28,660 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=150, Invalid=606, Unknown=0, NotChecked=0, Total=756 [2025-01-10 07:51:28,661 INFO L87 Difference]: Start difference. First operand 49 states and 55 transitions. cyclomatic complexity: 10 Second operand has 28 states, 20 states have (on average 3.0) internal successors, (60), 24 states have internal predecessors, (60), 14 states have call successors, (25), 6 states have call predecessors, (25), 9 states have return successors, (26), 11 states have call predecessors, (26), 14 states have call successors, (26) [2025-01-10 07:51:28,919 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-10 07:51:28,919 INFO L93 Difference]: Finished difference Result 53 states and 59 transitions. [2025-01-10 07:51:28,920 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 53 states and 59 transitions. [2025-01-10 07:51:28,920 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 18 [2025-01-10 07:51:28,921 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 53 states to 53 states and 59 transitions. [2025-01-10 07:51:28,921 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 53 [2025-01-10 07:51:28,921 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 53 [2025-01-10 07:51:28,921 INFO L73 IsDeterministic]: Start isDeterministic. Operand 53 states and 59 transitions. [2025-01-10 07:51:28,922 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2025-01-10 07:51:28,922 INFO L218 hiAutomatonCegarLoop]: Abstraction has 53 states and 59 transitions. [2025-01-10 07:51:28,922 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 53 states and 59 transitions. [2025-01-10 07:51:28,924 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 53 to 53. [2025-01-10 07:51:28,924 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 53 states, 29 states have (on average 1.103448275862069) internal successors, (32), 32 states have internal predecessors, (32), 8 states have call successors, (8), 4 states have call predecessors, (8), 16 states have return successors, (19), 16 states have call predecessors, (19), 6 states have call successors, (19) [2025-01-10 07:51:28,924 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 53 states to 53 states and 59 transitions. [2025-01-10 07:51:28,924 INFO L240 hiAutomatonCegarLoop]: Abstraction has 53 states and 59 transitions. [2025-01-10 07:51:28,925 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2025-01-10 07:51:28,925 INFO L432 stractBuchiCegarLoop]: Abstraction has 53 states and 59 transitions. [2025-01-10 07:51:28,925 INFO L338 stractBuchiCegarLoop]: ======== Iteration 9 ============ [2025-01-10 07:51:28,925 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 53 states and 59 transitions. [2025-01-10 07:51:28,926 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 18 [2025-01-10 07:51:28,926 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-01-10 07:51:28,926 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-01-10 07:51:28,929 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2025-01-10 07:51:28,929 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [84, 84, 72, 72, 72, 15, 15, 12, 12, 12, 12, 12, 12, 12, 4, 4, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1] [2025-01-10 07:51:28,930 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~mem16#1, main_#t~mem17#1, main_#t~short18#1, main_#t~mem19#1, main_#t~short20#1, main_#t~mem21#1, main_#t~short22#1, main_~#a~0#1.base, main_~#a~0#1.offset, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#c~0#1.base, main_~#c~0#1.offset, main_~#d~0#1.base, main_~#d~0#1.offset;call main_~#a~0#1.base, main_~#a~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#2(6, main_~#a~0#1.base, main_~#a~0#1.offset, 4);call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#1(6, main_~#b~0#1.base, main_~#b~0#1.offset, 4);call main_~#c~0#1.base, main_~#c~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#3(6, main_~#c~0#1.base, main_~#c~0#1.offset, 4);call main_~#d~0#1.base, main_~#d~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#4(6, main_~#d~0#1.base, main_~#d~0#1.offset, 4);call write~int#2(0, main_~#a~0#1.base, main_~#a~0#1.offset, 4);" "call func_to_recursive_line_22_to_23_0(main_~#b~0#1.base, main_~#b~0#1.offset, main_~#d~0#1.base, main_~#d~0#1.offset, main_~#c~0#1.base, main_~#c~0#1.offset, main_~#a~0#1.base, main_~#a~0#1.offset);"< [2025-01-10 07:51:28,930 INFO L754 eck$LassoCheckResult]: Loop: "~b.base, ~b.offset := #in~b.base, #in~b.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~a.base, ~a.offset := #in~a.base, #in~a.offset;call #t~mem13 := read~int#2(~a.base, ~a.offset, 4);" "assume #t~mem13 < 6;havoc #t~mem13;call write~int#1(0, ~b.base, ~b.offset, 4);" "call func_to_recursive_line_23_to_24_0(~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);"< "~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#1(~b.base, ~b.offset, 4);" "assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~c.base, ~c.offset, 4);" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume !(#t~mem7 < 6);havoc #t~mem7;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#84#return;" "call #t~mem11 := read~int#1(~b.base, ~b.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#1(1 + #t~mem11, ~b.base, ~b.offset, 4);havoc #t~mem11;havoc #t~pre12;" "call func_to_recursive_line_23_to_24_0(~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);"< "~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#1(~b.base, ~b.offset, 4);" "assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~c.base, ~c.offset, 4);" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume !(#t~mem7 < 6);havoc #t~mem7;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#84#return;" "call #t~mem11 := read~int#1(~b.base, ~b.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#1(1 + #t~mem11, ~b.base, ~b.offset, 4);havoc #t~mem11;havoc #t~pre12;" "call func_to_recursive_line_23_to_24_0(~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);"< "~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#1(~b.base, ~b.offset, 4);" "assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~c.base, ~c.offset, 4);" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume !(#t~mem7 < 6);havoc #t~mem7;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#84#return;" "call #t~mem11 := read~int#1(~b.base, ~b.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#1(1 + #t~mem11, ~b.base, ~b.offset, 4);havoc #t~mem11;havoc #t~pre12;" "call func_to_recursive_line_23_to_24_0(~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);"< "~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#1(~b.base, ~b.offset, 4);" "assume !(#t~mem10 < 6);havoc #t~mem10;" "assume true;" >"#86#return;" "assume true;" >"#86#return;" "assume true;" >"#86#return;" "assume true;" >"#88#return;" "call #t~mem14 := read~int#2(~a.base, ~a.offset, 4);#t~pre15 := 1 + #t~mem14;call write~int#2(1 + #t~mem14, ~a.base, ~a.offset, 4);havoc #t~mem14;havoc #t~pre15;" "call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~d.base, ~d.offset, ~c.base, ~c.offset, ~a.base, ~a.offset);"< [2025-01-10 07:51:28,931 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:51:28,931 INFO L85 PathProgramCache]: Analyzing trace with hash 71610, now seen corresponding path program 9 times [2025-01-10 07:51:28,931 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:51:28,931 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1683537611] [2025-01-10 07:51:28,931 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-01-10 07:51:28,931 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:51:28,935 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 3 statements into 1 equivalence classes. [2025-01-10 07:51:28,938 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-01-10 07:51:28,938 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) [2025-01-10 07:51:28,938 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:51:28,938 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:51:28,939 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 3 statements into 1 equivalence classes. [2025-01-10 07:51:28,940 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-01-10 07:51:28,940 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:51:28,940 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:51:28,943 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:51:28,943 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:51:28,944 INFO L85 PathProgramCache]: Analyzing trace with hash 24421248, now seen corresponding path program 6 times [2025-01-10 07:51:28,944 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:51:28,944 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [791539044] [2025-01-10 07:51:28,944 INFO L95 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2025-01-10 07:51:28,944 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:51:28,993 INFO L108 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE partitioned 534 statements into 23 equivalence classes. [2025-01-10 07:51:29,016 INFO L111 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) and asserted 92 of 534 statements. [2025-01-10 07:51:29,016 INFO L114 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2025-01-10 07:51:29,017 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:51:29,746 INFO L134 CoverageAnalysis]: Checked inductivity of 17151 backedges. 7 proven. 17 refuted. 0 times theorem prover too weak. 17127 trivial. 0 not checked. [2025-01-10 07:51:29,746 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-10 07:51:29,747 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [791539044] [2025-01-10 07:51:29,747 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [791539044] provided 0 perfect and 1 imperfect interpolant sequences [2025-01-10 07:51:29,747 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [657358553] [2025-01-10 07:51:29,747 INFO L95 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2025-01-10 07:51:29,747 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-01-10 07:51:29,747 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:51:29,751 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-01-10 07:51:29,752 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2025-01-10 07:51:29,957 INFO L108 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE partitioned 534 statements into 23 equivalence classes. [2025-01-10 07:51:30,020 INFO L111 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) and asserted 92 of 534 statements. [2025-01-10 07:51:30,020 INFO L114 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2025-01-10 07:51:30,020 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:51:30,025 INFO L256 TraceCheckSpWp]: Trace formula consists of 587 conjuncts, 57 conjuncts are in the unsatisfiable core [2025-01-10 07:51:30,037 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:51:30,048 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 11 treesize of output 7 [2025-01-10 07:51:30,377 INFO L134 CoverageAnalysis]: Checked inductivity of 17151 backedges. 0 proven. 15 refuted. 0 times theorem prover too weak. 17136 trivial. 0 not checked. [2025-01-10 07:51:30,377 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-01-10 07:51:32,618 INFO L134 CoverageAnalysis]: Checked inductivity of 17151 backedges. 0 proven. 33 refuted. 0 times theorem prover too weak. 17118 trivial. 0 not checked. [2025-01-10 07:51:32,619 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [657358553] provided 0 perfect and 2 imperfect interpolant sequences [2025-01-10 07:51:32,619 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-01-10 07:51:32,619 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 11, 18] total 34 [2025-01-10 07:51:32,619 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1641316923] [2025-01-10 07:51:32,619 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-01-10 07:51:32,620 INFO L769 eck$LassoCheckResult]: loop already infeasible [2025-01-10 07:51:32,620 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-10 07:51:32,620 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 34 interpolants. [2025-01-10 07:51:32,621 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=237, Invalid=885, Unknown=0, NotChecked=0, Total=1122 [2025-01-10 07:51:32,621 INFO L87 Difference]: Start difference. First operand 53 states and 59 transitions. cyclomatic complexity: 10 Second operand has 34 states, 26 states have (on average 1.7692307692307692) internal successors, (46), 29 states have internal predecessors, (46), 15 states have call successors, (17), 7 states have call predecessors, (17), 10 states have return successors, (20), 14 states have call predecessors, (20), 14 states have call successors, (20) [2025-01-10 07:51:32,968 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-10 07:51:32,969 INFO L93 Difference]: Finished difference Result 57 states and 63 transitions. [2025-01-10 07:51:32,969 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 57 states and 63 transitions. [2025-01-10 07:51:32,970 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 18 [2025-01-10 07:51:32,970 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 57 states to 57 states and 63 transitions. [2025-01-10 07:51:32,971 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 57 [2025-01-10 07:51:32,971 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 57 [2025-01-10 07:51:32,971 INFO L73 IsDeterministic]: Start isDeterministic. Operand 57 states and 63 transitions. [2025-01-10 07:51:32,971 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2025-01-10 07:51:32,971 INFO L218 hiAutomatonCegarLoop]: Abstraction has 57 states and 63 transitions. [2025-01-10 07:51:32,971 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 57 states and 63 transitions. [2025-01-10 07:51:32,974 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 57 to 57. [2025-01-10 07:51:32,974 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 57 states, 31 states have (on average 1.096774193548387) internal successors, (34), 34 states have internal predecessors, (34), 8 states have call successors, (8), 4 states have call predecessors, (8), 18 states have return successors, (21), 18 states have call predecessors, (21), 6 states have call successors, (21) [2025-01-10 07:51:32,974 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 57 states to 57 states and 63 transitions. [2025-01-10 07:51:32,974 INFO L240 hiAutomatonCegarLoop]: Abstraction has 57 states and 63 transitions. [2025-01-10 07:51:32,975 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2025-01-10 07:51:32,976 INFO L432 stractBuchiCegarLoop]: Abstraction has 57 states and 63 transitions. [2025-01-10 07:51:32,976 INFO L338 stractBuchiCegarLoop]: ======== Iteration 10 ============ [2025-01-10 07:51:32,976 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 57 states and 63 transitions. [2025-01-10 07:51:32,976 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 18 [2025-01-10 07:51:32,977 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-01-10 07:51:32,977 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-01-10 07:51:32,981 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2025-01-10 07:51:32,981 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [140, 140, 120, 120, 120, 25, 25, 20, 20, 20, 20, 20, 20, 20, 6, 6, 5, 5, 5, 5, 5, 5, 5, 1, 1, 1, 1, 1, 1, 1] [2025-01-10 07:51:32,981 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~mem16#1, main_#t~mem17#1, main_#t~short18#1, main_#t~mem19#1, main_#t~short20#1, main_#t~mem21#1, main_#t~short22#1, main_~#a~0#1.base, main_~#a~0#1.offset, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#c~0#1.base, main_~#c~0#1.offset, main_~#d~0#1.base, main_~#d~0#1.offset;call main_~#a~0#1.base, main_~#a~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#2(6, main_~#a~0#1.base, main_~#a~0#1.offset, 4);call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#1(6, main_~#b~0#1.base, main_~#b~0#1.offset, 4);call main_~#c~0#1.base, main_~#c~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#3(6, main_~#c~0#1.base, main_~#c~0#1.offset, 4);call main_~#d~0#1.base, main_~#d~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#4(6, main_~#d~0#1.base, main_~#d~0#1.offset, 4);call write~int#2(0, main_~#a~0#1.base, main_~#a~0#1.offset, 4);" "call func_to_recursive_line_22_to_23_0(main_~#b~0#1.base, main_~#b~0#1.offset, main_~#d~0#1.base, main_~#d~0#1.offset, main_~#c~0#1.base, main_~#c~0#1.offset, main_~#a~0#1.base, main_~#a~0#1.offset);"< [2025-01-10 07:51:32,982 INFO L754 eck$LassoCheckResult]: Loop: "~b.base, ~b.offset := #in~b.base, #in~b.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~a.base, ~a.offset := #in~a.base, #in~a.offset;call #t~mem13 := read~int#2(~a.base, ~a.offset, 4);" "assume #t~mem13 < 6;havoc #t~mem13;call write~int#1(0, ~b.base, ~b.offset, 4);" "call func_to_recursive_line_23_to_24_0(~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);"< "~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#1(~b.base, ~b.offset, 4);" "assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~c.base, ~c.offset, 4);" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume !(#t~mem7 < 6);havoc #t~mem7;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#84#return;" "call #t~mem11 := read~int#1(~b.base, ~b.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#1(1 + #t~mem11, ~b.base, ~b.offset, 4);havoc #t~mem11;havoc #t~pre12;" "call func_to_recursive_line_23_to_24_0(~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);"< "~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#1(~b.base, ~b.offset, 4);" "assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~c.base, ~c.offset, 4);" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume !(#t~mem7 < 6);havoc #t~mem7;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#84#return;" "call #t~mem11 := read~int#1(~b.base, ~b.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#1(1 + #t~mem11, ~b.base, ~b.offset, 4);havoc #t~mem11;havoc #t~pre12;" "call func_to_recursive_line_23_to_24_0(~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);"< "~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#1(~b.base, ~b.offset, 4);" "assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~c.base, ~c.offset, 4);" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume !(#t~mem7 < 6);havoc #t~mem7;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#84#return;" "call #t~mem11 := read~int#1(~b.base, ~b.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#1(1 + #t~mem11, ~b.base, ~b.offset, 4);havoc #t~mem11;havoc #t~pre12;" "call func_to_recursive_line_23_to_24_0(~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);"< "~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#1(~b.base, ~b.offset, 4);" "assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~c.base, ~c.offset, 4);" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume !(#t~mem7 < 6);havoc #t~mem7;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#84#return;" "call #t~mem11 := read~int#1(~b.base, ~b.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#1(1 + #t~mem11, ~b.base, ~b.offset, 4);havoc #t~mem11;havoc #t~pre12;" "call func_to_recursive_line_23_to_24_0(~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);"< "~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#1(~b.base, ~b.offset, 4);" "assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~c.base, ~c.offset, 4);" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume !(#t~mem7 < 6);havoc #t~mem7;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#84#return;" "call #t~mem11 := read~int#1(~b.base, ~b.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#1(1 + #t~mem11, ~b.base, ~b.offset, 4);havoc #t~mem11;havoc #t~pre12;" "call func_to_recursive_line_23_to_24_0(~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);"< "~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#1(~b.base, ~b.offset, 4);" "assume !(#t~mem10 < 6);havoc #t~mem10;" "assume true;" >"#86#return;" "assume true;" >"#86#return;" "assume true;" >"#86#return;" "assume true;" >"#86#return;" "assume true;" >"#86#return;" "assume true;" >"#88#return;" "call #t~mem14 := read~int#2(~a.base, ~a.offset, 4);#t~pre15 := 1 + #t~mem14;call write~int#2(1 + #t~mem14, ~a.base, ~a.offset, 4);havoc #t~mem14;havoc #t~pre15;" "call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~d.base, ~d.offset, ~c.base, ~c.offset, ~a.base, ~a.offset);"< [2025-01-10 07:51:32,983 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:51:32,983 INFO L85 PathProgramCache]: Analyzing trace with hash 71610, now seen corresponding path program 10 times [2025-01-10 07:51:32,983 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:51:32,983 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [229517586] [2025-01-10 07:51:32,983 INFO L95 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2025-01-10 07:51:32,983 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:51:32,989 INFO L108 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST partitioned 3 statements into 2 equivalence classes. [2025-01-10 07:51:32,993 INFO L111 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 2 check-sat command(s) and asserted 3 of 3 statements. [2025-01-10 07:51:32,993 INFO L114 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 2 check-sat command(s) [2025-01-10 07:51:32,993 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:51:32,993 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:51:32,995 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 3 statements into 1 equivalence classes. [2025-01-10 07:51:32,997 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-01-10 07:51:32,997 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:51:32,997 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:51:33,001 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:51:33,002 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:51:33,002 INFO L85 PathProgramCache]: Analyzing trace with hash -431721758, now seen corresponding path program 7 times [2025-01-10 07:51:33,002 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:51:33,002 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [318191459] [2025-01-10 07:51:33,003 INFO L95 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2025-01-10 07:51:33,003 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:51:33,069 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 884 statements into 1 equivalence classes. [2025-01-10 07:51:33,450 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 884 of 884 statements. [2025-01-10 07:51:33,450 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:51:33,450 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:51:39,725 INFO L134 CoverageAnalysis]: Checked inductivity of 47920 backedges. 21 proven. 631 refuted. 0 times theorem prover too weak. 47268 trivial. 0 not checked. [2025-01-10 07:51:39,725 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-10 07:51:39,725 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [318191459] [2025-01-10 07:51:39,725 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [318191459] provided 0 perfect and 1 imperfect interpolant sequences [2025-01-10 07:51:39,726 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1777499349] [2025-01-10 07:51:39,726 INFO L95 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2025-01-10 07:51:39,726 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-01-10 07:51:39,726 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:51:39,733 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-01-10 07:51:39,741 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2025-01-10 07:51:40,116 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 884 statements into 1 equivalence classes. [2025-01-10 07:51:40,636 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 884 of 884 statements. [2025-01-10 07:51:40,636 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:51:40,637 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:51:40,656 INFO L256 TraceCheckSpWp]: Trace formula consists of 5044 conjuncts, 67 conjuncts are in the unsatisfiable core [2025-01-10 07:51:40,673 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:51:40,699 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 15 treesize of output 1 [2025-01-10 07:51:40,972 INFO L134 CoverageAnalysis]: Checked inductivity of 47920 backedges. 614 proven. 24 refuted. 0 times theorem prover too weak. 47282 trivial. 0 not checked. [2025-01-10 07:51:40,972 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-01-10 07:51:46,067 INFO L134 CoverageAnalysis]: Checked inductivity of 47920 backedges. 614 proven. 58 refuted. 0 times theorem prover too weak. 47248 trivial. 0 not checked. [2025-01-10 07:51:46,067 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1777499349] provided 0 perfect and 2 imperfect interpolant sequences [2025-01-10 07:51:46,067 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-01-10 07:51:46,068 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 12, 22] total 40 [2025-01-10 07:51:46,068 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [648032624] [2025-01-10 07:51:46,068 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-01-10 07:51:46,070 INFO L769 eck$LassoCheckResult]: loop already infeasible [2025-01-10 07:51:46,070 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-10 07:51:46,070 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 40 interpolants. [2025-01-10 07:51:46,071 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=313, Invalid=1247, Unknown=0, NotChecked=0, Total=1560 [2025-01-10 07:51:46,071 INFO L87 Difference]: Start difference. First operand 57 states and 63 transitions. cyclomatic complexity: 10 Second operand has 40 states, 30 states have (on average 2.066666666666667) internal successors, (62), 34 states have internal predecessors, (62), 18 states have call successors, (25), 8 states have call predecessors, (25), 13 states have return successors, (30), 17 states have call predecessors, (30), 18 states have call successors, (30) [2025-01-10 07:51:46,434 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-10 07:51:46,434 INFO L93 Difference]: Finished difference Result 61 states and 67 transitions. [2025-01-10 07:51:46,434 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 61 states and 67 transitions. [2025-01-10 07:51:46,435 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 18 [2025-01-10 07:51:46,435 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 61 states to 61 states and 67 transitions. [2025-01-10 07:51:46,436 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 61 [2025-01-10 07:51:46,436 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 61 [2025-01-10 07:51:46,436 INFO L73 IsDeterministic]: Start isDeterministic. Operand 61 states and 67 transitions. [2025-01-10 07:51:46,436 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2025-01-10 07:51:46,436 INFO L218 hiAutomatonCegarLoop]: Abstraction has 61 states and 67 transitions. [2025-01-10 07:51:46,436 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 61 states and 67 transitions. [2025-01-10 07:51:46,442 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 61 to 61. [2025-01-10 07:51:46,444 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 61 states, 33 states have (on average 1.0909090909090908) internal successors, (36), 36 states have internal predecessors, (36), 8 states have call successors, (8), 4 states have call predecessors, (8), 20 states have return successors, (23), 20 states have call predecessors, (23), 6 states have call successors, (23) [2025-01-10 07:51:46,444 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 61 states to 61 states and 67 transitions. [2025-01-10 07:51:46,444 INFO L240 hiAutomatonCegarLoop]: Abstraction has 61 states and 67 transitions. [2025-01-10 07:51:46,444 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2025-01-10 07:51:46,445 INFO L432 stractBuchiCegarLoop]: Abstraction has 61 states and 67 transitions. [2025-01-10 07:51:46,445 INFO L338 stractBuchiCegarLoop]: ======== Iteration 11 ============ [2025-01-10 07:51:46,445 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 61 states and 67 transitions. [2025-01-10 07:51:46,445 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 18 [2025-01-10 07:51:46,445 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-01-10 07:51:46,445 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-01-10 07:51:46,453 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2025-01-10 07:51:46,457 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [210, 210, 180, 180, 180, 35, 35, 30, 30, 30, 30, 30, 30, 30, 6, 6, 5, 5, 5, 5, 5, 5, 5, 1, 1, 1, 1, 1, 1, 1] [2025-01-10 07:51:46,457 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~mem16#1, main_#t~mem17#1, main_#t~short18#1, main_#t~mem19#1, main_#t~short20#1, main_#t~mem21#1, main_#t~short22#1, main_~#a~0#1.base, main_~#a~0#1.offset, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#c~0#1.base, main_~#c~0#1.offset, main_~#d~0#1.base, main_~#d~0#1.offset;call main_~#a~0#1.base, main_~#a~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#2(6, main_~#a~0#1.base, main_~#a~0#1.offset, 4);call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#1(6, main_~#b~0#1.base, main_~#b~0#1.offset, 4);call main_~#c~0#1.base, main_~#c~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#3(6, main_~#c~0#1.base, main_~#c~0#1.offset, 4);call main_~#d~0#1.base, main_~#d~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#4(6, main_~#d~0#1.base, main_~#d~0#1.offset, 4);call write~int#2(0, main_~#a~0#1.base, main_~#a~0#1.offset, 4);" "call func_to_recursive_line_22_to_23_0(main_~#b~0#1.base, main_~#b~0#1.offset, main_~#d~0#1.base, main_~#d~0#1.offset, main_~#c~0#1.base, main_~#c~0#1.offset, main_~#a~0#1.base, main_~#a~0#1.offset);"< [2025-01-10 07:51:46,457 INFO L754 eck$LassoCheckResult]: Loop: "~b.base, ~b.offset := #in~b.base, #in~b.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~a.base, ~a.offset := #in~a.base, #in~a.offset;call #t~mem13 := read~int#2(~a.base, ~a.offset, 4);" "assume #t~mem13 < 6;havoc #t~mem13;call write~int#1(0, ~b.base, ~b.offset, 4);" "call func_to_recursive_line_23_to_24_0(~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);"< "~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#1(~b.base, ~b.offset, 4);" "assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~c.base, ~c.offset, 4);" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume !(#t~mem7 < 6);havoc #t~mem7;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#84#return;" "call #t~mem11 := read~int#1(~b.base, ~b.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#1(1 + #t~mem11, ~b.base, ~b.offset, 4);havoc #t~mem11;havoc #t~pre12;" "call func_to_recursive_line_23_to_24_0(~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);"< "~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#1(~b.base, ~b.offset, 4);" "assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~c.base, ~c.offset, 4);" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume !(#t~mem7 < 6);havoc #t~mem7;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#84#return;" "call #t~mem11 := read~int#1(~b.base, ~b.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#1(1 + #t~mem11, ~b.base, ~b.offset, 4);havoc #t~mem11;havoc #t~pre12;" "call func_to_recursive_line_23_to_24_0(~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);"< "~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#1(~b.base, ~b.offset, 4);" "assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~c.base, ~c.offset, 4);" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume !(#t~mem7 < 6);havoc #t~mem7;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#84#return;" "call #t~mem11 := read~int#1(~b.base, ~b.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#1(1 + #t~mem11, ~b.base, ~b.offset, 4);havoc #t~mem11;havoc #t~pre12;" "call func_to_recursive_line_23_to_24_0(~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);"< "~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#1(~b.base, ~b.offset, 4);" "assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~c.base, ~c.offset, 4);" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume !(#t~mem7 < 6);havoc #t~mem7;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#84#return;" "call #t~mem11 := read~int#1(~b.base, ~b.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#1(1 + #t~mem11, ~b.base, ~b.offset, 4);havoc #t~mem11;havoc #t~pre12;" "call func_to_recursive_line_23_to_24_0(~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);"< "~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#1(~b.base, ~b.offset, 4);" "assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~c.base, ~c.offset, 4);" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume !(#t~mem7 < 6);havoc #t~mem7;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#84#return;" "call #t~mem11 := read~int#1(~b.base, ~b.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#1(1 + #t~mem11, ~b.base, ~b.offset, 4);havoc #t~mem11;havoc #t~pre12;" "call func_to_recursive_line_23_to_24_0(~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);"< "~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#1(~b.base, ~b.offset, 4);" "assume !(#t~mem10 < 6);havoc #t~mem10;" "assume true;" >"#86#return;" "assume true;" >"#86#return;" "assume true;" >"#86#return;" "assume true;" >"#86#return;" "assume true;" >"#86#return;" "assume true;" >"#88#return;" "call #t~mem14 := read~int#2(~a.base, ~a.offset, 4);#t~pre15 := 1 + #t~mem14;call write~int#2(1 + #t~mem14, ~a.base, ~a.offset, 4);havoc #t~mem14;havoc #t~pre15;" "call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~d.base, ~d.offset, ~c.base, ~c.offset, ~a.base, ~a.offset);"< [2025-01-10 07:51:46,458 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:51:46,458 INFO L85 PathProgramCache]: Analyzing trace with hash 71610, now seen corresponding path program 11 times [2025-01-10 07:51:46,458 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:51:46,458 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [563124148] [2025-01-10 07:51:46,458 INFO L95 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2025-01-10 07:51:46,458 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:51:46,465 INFO L108 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 partitioned 3 statements into 1 equivalence classes. [2025-01-10 07:51:46,467 INFO L111 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-01-10 07:51:46,468 INFO L114 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2025-01-10 07:51:46,469 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:51:46,469 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:51:46,470 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 3 statements into 1 equivalence classes. [2025-01-10 07:51:46,471 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-01-10 07:51:46,471 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:51:46,471 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:51:46,475 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:51:46,476 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:51:46,477 INFO L85 PathProgramCache]: Analyzing trace with hash 729449042, now seen corresponding path program 8 times [2025-01-10 07:51:46,477 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:51:46,477 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1088708645] [2025-01-10 07:51:46,477 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-01-10 07:51:46,477 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:51:46,567 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 1294 statements into 2 equivalence classes. [2025-01-10 07:51:47,644 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 1294 of 1294 statements. [2025-01-10 07:51:47,645 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-01-10 07:51:47,645 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:52:16,057 INFO L134 CoverageAnalysis]: Checked inductivity of 107665 backedges. 23 proven. 2993 refuted. 0 times theorem prover too weak. 104649 trivial. 0 not checked. [2025-01-10 07:52:16,057 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-10 07:52:16,057 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1088708645] [2025-01-10 07:52:16,057 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1088708645] provided 0 perfect and 1 imperfect interpolant sequences [2025-01-10 07:52:16,057 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1202581463] [2025-01-10 07:52:16,057 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-01-10 07:52:16,058 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-01-10 07:52:16,058 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:52:16,061 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-01-10 07:52:16,064 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2025-01-10 07:52:16,439 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 1294 statements into 2 equivalence classes. [2025-01-10 07:52:17,338 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 1294 of 1294 statements. [2025-01-10 07:52:17,338 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-01-10 07:52:17,338 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:52:17,375 INFO L256 TraceCheckSpWp]: Trace formula consists of 7304 conjuncts, 79 conjuncts are in the unsatisfiable core [2025-01-10 07:52:17,404 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:52:17,406 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 11 treesize of output 7 [2025-01-10 07:52:17,754 INFO L134 CoverageAnalysis]: Checked inductivity of 107665 backedges. 0 proven. 35 refuted. 0 times theorem prover too weak. 107630 trivial. 0 not checked. [2025-01-10 07:52:17,755 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-01-10 07:52:23,344 INFO L134 CoverageAnalysis]: Checked inductivity of 107665 backedges. 0 proven. 90 refuted. 0 times theorem prover too weak. 107575 trivial. 0 not checked. [2025-01-10 07:52:23,345 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1202581463] provided 0 perfect and 2 imperfect interpolant sequences [2025-01-10 07:52:23,345 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-01-10 07:52:23,345 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [25, 13, 26] total 52 [2025-01-10 07:52:23,345 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [255904970] [2025-01-10 07:52:23,345 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-01-10 07:52:23,347 INFO L769 eck$LassoCheckResult]: loop already infeasible [2025-01-10 07:52:23,347 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-10 07:52:23,349 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 52 interpolants. [2025-01-10 07:52:23,350 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=423, Invalid=2229, Unknown=0, NotChecked=0, Total=2652 [2025-01-10 07:52:23,351 INFO L87 Difference]: Start difference. First operand 61 states and 67 transitions. cyclomatic complexity: 10 Second operand has 52 states, 37 states have (on average 1.6756756756756757) internal successors, (62), 43 states have internal predecessors, (62), 23 states have call successors, (25), 10 states have call predecessors, (25), 14 states have return successors, (32), 20 states have call predecessors, (32), 22 states have call successors, (32) [2025-01-10 07:52:24,083 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-10 07:52:24,084 INFO L93 Difference]: Finished difference Result 63 states and 69 transitions. [2025-01-10 07:52:24,084 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 63 states and 69 transitions. [2025-01-10 07:52:24,085 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 18 [2025-01-10 07:52:24,086 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 63 states to 63 states and 69 transitions. [2025-01-10 07:52:24,087 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 63 [2025-01-10 07:52:24,087 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 63 [2025-01-10 07:52:24,087 INFO L73 IsDeterministic]: Start isDeterministic. Operand 63 states and 69 transitions. [2025-01-10 07:52:24,087 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2025-01-10 07:52:24,087 INFO L218 hiAutomatonCegarLoop]: Abstraction has 63 states and 69 transitions. [2025-01-10 07:52:24,087 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 63 states and 69 transitions. [2025-01-10 07:52:24,091 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 63 to 63. [2025-01-10 07:52:24,091 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 63 states, 34 states have (on average 1.088235294117647) internal successors, (37), 37 states have internal predecessors, (37), 8 states have call successors, (8), 4 states have call predecessors, (8), 21 states have return successors, (24), 21 states have call predecessors, (24), 6 states have call successors, (24) [2025-01-10 07:52:24,092 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 63 states to 63 states and 69 transitions. [2025-01-10 07:52:24,095 INFO L240 hiAutomatonCegarLoop]: Abstraction has 63 states and 69 transitions. [2025-01-10 07:52:24,096 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2025-01-10 07:52:24,096 INFO L432 stractBuchiCegarLoop]: Abstraction has 63 states and 69 transitions. [2025-01-10 07:52:24,096 INFO L338 stractBuchiCegarLoop]: ======== Iteration 12 ============ [2025-01-10 07:52:24,096 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 63 states and 69 transitions. [2025-01-10 07:52:24,097 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 18 [2025-01-10 07:52:24,099 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-01-10 07:52:24,099 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-01-10 07:52:24,103 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2025-01-10 07:52:24,103 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [252, 252, 216, 216, 216, 42, 42, 36, 36, 36, 36, 36, 36, 36, 7, 7, 6, 6, 6, 6, 6, 6, 6, 1, 1, 1, 1, 1, 1, 1] [2025-01-10 07:52:24,103 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~mem16#1, main_#t~mem17#1, main_#t~short18#1, main_#t~mem19#1, main_#t~short20#1, main_#t~mem21#1, main_#t~short22#1, main_~#a~0#1.base, main_~#a~0#1.offset, main_~#b~0#1.base, main_~#b~0#1.offset, main_~#c~0#1.base, main_~#c~0#1.offset, main_~#d~0#1.base, main_~#d~0#1.offset;call main_~#a~0#1.base, main_~#a~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#2(6, main_~#a~0#1.base, main_~#a~0#1.offset, 4);call main_~#b~0#1.base, main_~#b~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#1(6, main_~#b~0#1.base, main_~#b~0#1.offset, 4);call main_~#c~0#1.base, main_~#c~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#3(6, main_~#c~0#1.base, main_~#c~0#1.offset, 4);call main_~#d~0#1.base, main_~#d~0#1.offset := #Ultimate.allocOnStack(4);call write~init~int#4(6, main_~#d~0#1.base, main_~#d~0#1.offset, 4);call write~int#2(0, main_~#a~0#1.base, main_~#a~0#1.offset, 4);" "call func_to_recursive_line_22_to_23_0(main_~#b~0#1.base, main_~#b~0#1.offset, main_~#d~0#1.base, main_~#d~0#1.offset, main_~#c~0#1.base, main_~#c~0#1.offset, main_~#a~0#1.base, main_~#a~0#1.offset);"< [2025-01-10 07:52:24,104 INFO L754 eck$LassoCheckResult]: Loop: "~b.base, ~b.offset := #in~b.base, #in~b.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~a.base, ~a.offset := #in~a.base, #in~a.offset;call #t~mem13 := read~int#2(~a.base, ~a.offset, 4);" "assume #t~mem13 < 6;havoc #t~mem13;call write~int#1(0, ~b.base, ~b.offset, 4);" "call func_to_recursive_line_23_to_24_0(~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);"< "~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#1(~b.base, ~b.offset, 4);" "assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~c.base, ~c.offset, 4);" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume !(#t~mem7 < 6);havoc #t~mem7;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#84#return;" "call #t~mem11 := read~int#1(~b.base, ~b.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#1(1 + #t~mem11, ~b.base, ~b.offset, 4);havoc #t~mem11;havoc #t~pre12;" "call func_to_recursive_line_23_to_24_0(~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);"< "~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#1(~b.base, ~b.offset, 4);" "assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~c.base, ~c.offset, 4);" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume !(#t~mem7 < 6);havoc #t~mem7;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#84#return;" "call #t~mem11 := read~int#1(~b.base, ~b.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#1(1 + #t~mem11, ~b.base, ~b.offset, 4);havoc #t~mem11;havoc #t~pre12;" "call func_to_recursive_line_23_to_24_0(~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);"< "~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#1(~b.base, ~b.offset, 4);" "assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~c.base, ~c.offset, 4);" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume !(#t~mem7 < 6);havoc #t~mem7;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#84#return;" "call #t~mem11 := read~int#1(~b.base, ~b.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#1(1 + #t~mem11, ~b.base, ~b.offset, 4);havoc #t~mem11;havoc #t~pre12;" "call func_to_recursive_line_23_to_24_0(~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);"< "~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#1(~b.base, ~b.offset, 4);" "assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~c.base, ~c.offset, 4);" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume !(#t~mem7 < 6);havoc #t~mem7;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#84#return;" "call #t~mem11 := read~int#1(~b.base, ~b.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#1(1 + #t~mem11, ~b.base, ~b.offset, 4);havoc #t~mem11;havoc #t~pre12;" "call func_to_recursive_line_23_to_24_0(~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);"< "~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#1(~b.base, ~b.offset, 4);" "assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~c.base, ~c.offset, 4);" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume !(#t~mem7 < 6);havoc #t~mem7;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#84#return;" "call #t~mem11 := read~int#1(~b.base, ~b.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#1(1 + #t~mem11, ~b.base, ~b.offset, 4);havoc #t~mem11;havoc #t~pre12;" "call func_to_recursive_line_23_to_24_0(~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);"< "~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#1(~b.base, ~b.offset, 4);" "assume #t~mem10 < 6;havoc #t~mem10;call write~int#3(0, ~c.base, ~c.offset, 4);" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume #t~mem7 < 6;havoc #t~mem7;call write~int#4(0, ~d.base, ~d.offset, 4);" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume #t~mem4 < 6;havoc #t~mem4;call #t~mem5 := read~int#4(~d.base, ~d.offset, 4);#t~pre6 := 1 + #t~mem5;call write~int#4(1 + #t~mem5, ~d.base, ~d.offset, 4);havoc #t~mem5;havoc #t~pre6;" "call func_to_recursive_line_25_to_25_0(~d.base, ~d.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem4 := read~int#4(~d.base, ~d.offset, 4);" "assume !(#t~mem4 < 6);havoc #t~mem4;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#92#return;" "assume true;" >"#80#return;" "call #t~mem8 := read~int#3(~c.base, ~c.offset, 4);#t~pre9 := 1 + #t~mem8;call write~int#3(1 + #t~mem8, ~c.base, ~c.offset, 4);havoc #t~mem8;havoc #t~pre9;" "call func_to_recursive_line_24_to_25_0(~d.base, ~d.offset, ~c.base, ~c.offset);"< "~d.base, ~d.offset := #in~d.base, #in~d.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;call #t~mem7 := read~int#3(~c.base, ~c.offset, 4);" "assume !(#t~mem7 < 6);havoc #t~mem7;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#82#return;" "assume true;" >"#84#return;" "call #t~mem11 := read~int#1(~b.base, ~b.offset, 4);#t~pre12 := 1 + #t~mem11;call write~int#1(1 + #t~mem11, ~b.base, ~b.offset, 4);havoc #t~mem11;havoc #t~pre12;" "call func_to_recursive_line_23_to_24_0(~b.base, ~b.offset, ~c.base, ~c.offset, ~d.base, ~d.offset);"< "~b.base, ~b.offset := #in~b.base, #in~b.offset;~c.base, ~c.offset := #in~c.base, #in~c.offset;~d.base, ~d.offset := #in~d.base, #in~d.offset;call #t~mem10 := read~int#1(~b.base, ~b.offset, 4);" "assume !(#t~mem10 < 6);havoc #t~mem10;" "assume true;" >"#86#return;" "assume true;" >"#86#return;" "assume true;" >"#86#return;" "assume true;" >"#86#return;" "assume true;" >"#86#return;" "assume true;" >"#86#return;" "assume true;" >"#88#return;" "call #t~mem14 := read~int#2(~a.base, ~a.offset, 4);#t~pre15 := 1 + #t~mem14;call write~int#2(1 + #t~mem14, ~a.base, ~a.offset, 4);havoc #t~mem14;havoc #t~pre15;" "call func_to_recursive_line_22_to_23_0(~b.base, ~b.offset, ~d.base, ~d.offset, ~c.base, ~c.offset, ~a.base, ~a.offset);"< [2025-01-10 07:52:24,105 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:52:24,105 INFO L85 PathProgramCache]: Analyzing trace with hash 71610, now seen corresponding path program 12 times [2025-01-10 07:52:24,105 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:52:24,105 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1565017852] [2025-01-10 07:52:24,105 INFO L95 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2025-01-10 07:52:24,106 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:52:24,112 INFO L108 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE partitioned 3 statements into 1 equivalence classes. [2025-01-10 07:52:24,114 INFO L111 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-01-10 07:52:24,114 INFO L114 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE issued 1 check-sat command(s) [2025-01-10 07:52:24,114 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:52:24,114 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:52:24,115 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 3 statements into 1 equivalence classes. [2025-01-10 07:52:24,116 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-01-10 07:52:24,116 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:52:24,116 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:52:24,121 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:52:24,122 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:52:24,122 INFO L85 PathProgramCache]: Analyzing trace with hash 815036130, now seen corresponding path program 9 times [2025-01-10 07:52:24,122 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:52:24,122 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1493779706] [2025-01-10 07:52:24,122 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-01-10 07:52:24,122 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:52:24,326 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 1551 statements into 124 equivalence classes.