diff --git a/docs/beta/404.html b/docs/beta/404.html index c31e96b2..fc960448 100644 --- a/docs/beta/404.html +++ b/docs/beta/404.html @@ -12124,7 +12124,7 @@
Traceback (most recent call last):
-  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_36872/1830731544.py", line 4, in <module>
+  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_4590/1830731544.py", line 4, in <module>
     raise NotFoundError
 NotFoundError: '404' (expected)
 
diff --git a/docs/beta/code/01_Intro.py b/docs/beta/code/01_Intro.py index e63571bb..79934a06 100755 --- a/docs/beta/code/01_Intro.py +++ b/docs/beta/code/01_Intro.py @@ -3,7 +3,7 @@ # "Part I: Whetting Your Appetite" - a chapter of "The Debugging Book" # Web site: https://www.debuggingbook.org/html/01_Intro.html -# Last change: 2025-01-06 13:58:33+01:00 +# Last change: 2025-01-07 12:04:24+01:00 # # Copyright (c) 2021-2023 CISPA Helmholtz Center for Information Security # Copyright (c) 2018-2020 Saarland University, authors, and contributors diff --git a/docs/beta/code/02_Observing.py b/docs/beta/code/02_Observing.py index 1a26f12a..0fd6c74c 100755 --- a/docs/beta/code/02_Observing.py +++ b/docs/beta/code/02_Observing.py @@ -3,7 +3,7 @@ # "Part II: Observing Executions" - a chapter of "The Debugging Book" # Web site: https://www.debuggingbook.org/html/02_Observing.html -# Last change: 2025-01-06 13:58:56+01:00 +# Last change: 2025-01-07 12:04:46+01:00 # # Copyright (c) 2021-2023 CISPA Helmholtz Center for Information Security # Copyright (c) 2018-2020 Saarland University, authors, and contributors diff --git a/docs/beta/code/03_Dependencies.py b/docs/beta/code/03_Dependencies.py index 6b931de2..0927f7b3 100755 --- a/docs/beta/code/03_Dependencies.py +++ b/docs/beta/code/03_Dependencies.py @@ -3,7 +3,7 @@ # "Part III: Flows and Dependencies" - a chapter of "The Debugging Book" # Web site: https://www.debuggingbook.org/html/03_Dependencies.html -# Last change: 2025-01-06 13:59:29+01:00 +# Last change: 2025-01-07 12:05:17+01:00 # # Copyright (c) 2021-2023 CISPA Helmholtz Center for Information Security # Copyright (c) 2018-2020 Saarland University, authors, and contributors diff --git a/docs/beta/code/04_Reducing.py b/docs/beta/code/04_Reducing.py index 015c226f..5a188b77 100755 --- a/docs/beta/code/04_Reducing.py +++ b/docs/beta/code/04_Reducing.py @@ -3,7 +3,7 @@ # "Part IV: Reducing Failure Causes" - a chapter of "The Debugging Book" # Web site: https://www.debuggingbook.org/html/04_Reducing.html -# Last change: 2025-01-06 13:59:54+01:00 +# Last change: 2025-01-07 12:05:43+01:00 # # Copyright (c) 2021-2023 CISPA Helmholtz Center for Information Security # Copyright (c) 2018-2020 Saarland University, authors, and contributors diff --git a/docs/beta/code/05_Abstracting.py b/docs/beta/code/05_Abstracting.py index d1830a39..ca959f33 100755 --- a/docs/beta/code/05_Abstracting.py +++ b/docs/beta/code/05_Abstracting.py @@ -3,7 +3,7 @@ # "Part V: Abstracting Failures" - a chapter of "The Debugging Book" # Web site: https://www.debuggingbook.org/html/05_Abstracting.html -# Last change: 2025-01-06 14:00:23+01:00 +# Last change: 2025-01-07 12:06:10+01:00 # # Copyright (c) 2021-2023 CISPA Helmholtz Center for Information Security # Copyright (c) 2018-2020 Saarland University, authors, and contributors diff --git a/docs/beta/code/06_Repairing.py b/docs/beta/code/06_Repairing.py index a901741d..4d39d17b 100755 --- a/docs/beta/code/06_Repairing.py +++ b/docs/beta/code/06_Repairing.py @@ -3,7 +3,7 @@ # "Part VI: Automatic Repair" - a chapter of "The Debugging Book" # Web site: https://www.debuggingbook.org/html/06_Repairing.html -# Last change: 2025-01-06 14:05:23+01:00 +# Last change: 2025-01-07 12:12:30+01:00 # # Copyright (c) 2021-2023 CISPA Helmholtz Center for Information Security # Copyright (c) 2018-2020 Saarland University, authors, and contributors diff --git a/docs/beta/code/07_In_the_Large.py b/docs/beta/code/07_In_the_Large.py index 91941cf4..30661504 100755 --- a/docs/beta/code/07_In_the_Large.py +++ b/docs/beta/code/07_In_the_Large.py @@ -3,7 +3,7 @@ # "Part VII: Debugging in the Large" - a chapter of "The Debugging Book" # Web site: https://www.debuggingbook.org/html/07_In_the_Large.html -# Last change: 2025-01-06 14:05:57+01:00 +# Last change: 2025-01-07 12:13:32+01:00 # # Copyright (c) 2021-2023 CISPA Helmholtz Center for Information Security # Copyright (c) 2018-2020 Saarland University, authors, and contributors diff --git a/docs/beta/code/99_Appendices.py b/docs/beta/code/99_Appendices.py index 96225323..697ad14a 100755 --- a/docs/beta/code/99_Appendices.py +++ b/docs/beta/code/99_Appendices.py @@ -3,7 +3,7 @@ # "Appendices" - a chapter of "The Debugging Book" # Web site: https://www.debuggingbook.org/html/99_Appendices.html -# Last change: 2025-01-06 14:14:14+01:00 +# Last change: 2025-01-07 13:39:02+01:00 # # Copyright (c) 2021-2023 CISPA Helmholtz Center for Information Security # Copyright (c) 2018-2020 Saarland University, authors, and contributors diff --git a/docs/beta/code/Alhazen.py b/docs/beta/code/Alhazen.py index 17b46a42..5e251901 100755 --- a/docs/beta/code/Alhazen.py +++ b/docs/beta/code/Alhazen.py @@ -3,7 +3,7 @@ # "Learning from Failures" - a chapter of "The Debugging Book" # Web site: https://www.debuggingbook.org/html/Alhazen.html -# Last change: 2025-01-07 11:35:49+01:00 +# Last change: 2025-01-07 12:08:50+01:00 # # Copyright (c) 2021-2023 CISPA Helmholtz Center for Information Security # Copyright (c) 2018-2020 Saarland University, authors, and contributors @@ -79,17 +79,14 @@ There is also a text version available, with much fewer (but hopefully still essential) details: >>> print(alhazen.friendly_decision_tree()) -if <= 4.5000: - if == 'sqrt': - if <= 42.2000: - if <= -11.8470: - BUG - else: - NO_BUG +if <= -11.5000: + if <= -42.2970: + NO_BUG + else: + if == 'sqrt': + BUG else: NO_BUG - else: - NO_BUG else: NO_BUG diff --git a/docs/beta/code/Assertions.py b/docs/beta/code/Assertions.py index f3fab6bf..9ec7e961 100755 --- a/docs/beta/code/Assertions.py +++ b/docs/beta/code/Assertions.py @@ -3,7 +3,7 @@ # "Asserting Expectations" - a chapter of "The Debugging Book" # Web site: https://www.debuggingbook.org/html/Assertions.html -# Last change: 2025-01-06 18:55:05+01:00 +# Last change: 2025-01-07 12:05:15+01:00 # # Copyright (c) 2021-2023 CISPA Helmholtz Center for Information Security # Copyright (c) 2018-2020 Saarland University, authors, and contributors @@ -55,10 +55,10 @@ >>> with ExpectError(): >>> y = my_square_root(-1) Traceback (most recent call last): - File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_84673/76616918.py", line 2, in + File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_18303/76616918.py", line 2, in y = my_square_root(-1) ^^^^^^^^^^^^^^^^^^ - File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_84673/2617682038.py", line 2, in my_square_root + File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_18303/2617682038.py", line 2, in my_square_root assert x >= 0 ^^^^^^ AssertionError (expected) @@ -79,13 +79,13 @@ >>> with ExpectError(): >>> x = managed_mem[2] Traceback (most recent call last): - File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_84673/1296110967.py", line 2, in + File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_18303/1296110967.py", line 2, in x = managed_mem[2] ~~~~~~~~~~~^^^ - File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_84673/2465984283.py", line 3, in __getitem__ + File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_18303/2465984283.py", line 3, in __getitem__ return self.read(address) ^^^^^^^^^^^^^^^^^^ - File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_84673/2898840933.py", line 9, in read + File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_18303/2898840933.py", line 9, in read assert self.allocated[address], \ ~~~~~~~~~~~~~~^^^^^^^^^ AssertionError: Reading from unallocated memory (expected) diff --git a/docs/beta/code/ChangeCounter.py b/docs/beta/code/ChangeCounter.py index ff10ed93..570fbda9 100755 --- a/docs/beta/code/ChangeCounter.py +++ b/docs/beta/code/ChangeCounter.py @@ -3,7 +3,7 @@ # "Where the Bugs are" - a chapter of "The Debugging Book" # Web site: https://www.debuggingbook.org/html/ChangeCounter.html -# Last change: 2025-01-06 14:14:09+01:00 +# Last change: 2025-01-07 13:38:59+01:00 # # Copyright (c) 2021-2023 CISPA Helmholtz Center for Information Security # Copyright (c) 2018-2020 Saarland University, authors, and contributors diff --git a/docs/beta/code/ChangeDebugger.py b/docs/beta/code/ChangeDebugger.py index 6055b6a2..72fe4aae 100755 --- a/docs/beta/code/ChangeDebugger.py +++ b/docs/beta/code/ChangeDebugger.py @@ -3,7 +3,7 @@ # "Isolating Failure-Inducing Changes" - a chapter of "The Debugging Book" # Web site: https://www.debuggingbook.org/html/ChangeDebugger.html -# Last change: 2025-01-06 14:00:19+01:00 +# Last change: 2025-01-07 12:06:07+01:00 # # Copyright (c) 2021-2023 CISPA Helmholtz Center for Information Security # Copyright (c) 2018-2020 Saarland University, authors, and contributors @@ -100,9 +100,9 @@ def remove_html_markup(s): # type: ignore >>> with ExpectError(AssertionError): >>> test() Traceback (most recent call last): - File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_13097/4262003862.py", line 3, in + File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_19955/4262003862.py", line 3, in test() - File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_13097/3045937450.py", line 2, in test + File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_19955/3045937450.py", line 2, in test assert remove_html_markup('"foo"') == '"foo"' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ AssertionError (expected) @@ -145,7 +145,6 @@ def remove_html_markup(s): # type: ignore + quote = False out = "" - @@ -104,50 +104,43 @@ s: diff --git a/docs/beta/code/ClassDiagram.py b/docs/beta/code/ClassDiagram.py index 9e6f0fef..8c7034b0 100755 --- a/docs/beta/code/ClassDiagram.py +++ b/docs/beta/code/ClassDiagram.py @@ -3,7 +3,7 @@ # "Class Diagrams" - a chapter of "The Debugging Book" # Web site: https://www.debuggingbook.org/html/ClassDiagram.html -# Last change: 2025-01-06 14:14:57+01:00 +# Last change: 2025-01-07 13:39:39+01:00 # # Copyright (c) 2021-2023 CISPA Helmholtz Center for Information Security # Copyright (c) 2018-2020 Saarland University, authors, and contributors diff --git a/docs/beta/code/DDSetDebugger.py b/docs/beta/code/DDSetDebugger.py index c4fc21e7..f75c5af3 100755 --- a/docs/beta/code/DDSetDebugger.py +++ b/docs/beta/code/DDSetDebugger.py @@ -3,7 +3,7 @@ # "Generalizing Failure Circumstances" - a chapter of "The Debugging Book" # Web site: https://www.debuggingbook.org/html/DDSetDebugger.html -# Last change: 2025-01-06 17:58:01+01:00 +# Last change: 2025-01-07 12:06:46+01:00 # # Copyright (c) 2021-2023 CISPA Helmholtz Center for Information Security # Copyright (c) 2018-2020 Saarland University, authors, and contributors diff --git a/docs/beta/code/Debugger.py b/docs/beta/code/Debugger.py index d75d8ec6..95391f68 100755 --- a/docs/beta/code/Debugger.py +++ b/docs/beta/code/Debugger.py @@ -3,7 +3,7 @@ # "How Debuggers Work" - a chapter of "The Debugging Book" # Web site: https://www.debuggingbook.org/html/Debugger.html -# Last change: 2025-01-06 18:54:29+01:00 +# Last change: 2025-01-07 12:05:04+01:00 # # Copyright (c) 2021-2023 CISPA Helmholtz Center for Information Security # Copyright (c) 2018-2020 Saarland University, authors, and contributors diff --git a/docs/beta/code/DeltaDebugger.py b/docs/beta/code/DeltaDebugger.py index e7d3af3d..7cb0276b 100755 --- a/docs/beta/code/DeltaDebugger.py +++ b/docs/beta/code/DeltaDebugger.py @@ -3,7 +3,7 @@ # "Reducing Failure-Inducing Inputs" - a chapter of "The Debugging Book" # Web site: https://www.debuggingbook.org/html/DeltaDebugger.html -# Last change: 2025-01-06 18:55:02+01:00 +# Last change: 2025-01-07 12:05:52+01:00 # # Copyright (c) 2021-2023 CISPA Helmholtz Center for Information Security # Copyright (c) 2018-2020 Saarland University, authors, and contributors @@ -51,9 +51,9 @@ >>> with ExpectError(ZeroDivisionError): >>> myeval('1 + 2 * 3 / 0') Traceback (most recent call last): - File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_84917/4002351332.py", line 2, in + File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_19657/4002351332.py", line 2, in myeval('1 + 2 * 3 / 0') - File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_84917/2200911420.py", line 2, in myeval + File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_19657/2200911420.py", line 2, in myeval return eval(inp) ^^^^^^^^^ File "", line 1, in diff --git a/docs/beta/code/DynamicInvariants.py b/docs/beta/code/DynamicInvariants.py index a6bec3eb..1137b775 100755 --- a/docs/beta/code/DynamicInvariants.py +++ b/docs/beta/code/DynamicInvariants.py @@ -3,7 +3,7 @@ # "Mining Function Specifications" - a chapter of "The Debugging Book" # Web site: https://www.debuggingbook.org/html/DynamicInvariants.html -# Last change: 2025-01-06 18:59:06+01:00 +# Last change: 2025-01-07 12:06:34+01:00 # # Copyright (c) 2021-2023 CISPA Helmholtz Center for Information Security # Copyright (c) 2018-2020 Saarland University, authors, and contributors diff --git a/docs/beta/code/ExpectError.py b/docs/beta/code/ExpectError.py index b9f6e34a..74e82c1e 100755 --- a/docs/beta/code/ExpectError.py +++ b/docs/beta/code/ExpectError.py @@ -3,7 +3,7 @@ # "Error Handling" - a chapter of "The Debugging Book" # Web site: https://www.debuggingbook.org/html/ExpectError.html -# Last change: 2025-01-06 14:14:37+01:00 +# Last change: 2025-01-07 13:39:24+01:00 # # Copyright (c) 2021-2023 CISPA Helmholtz Center for Information Security # Copyright (c) 2018-2020 Saarland University, authors, and contributors @@ -47,7 +47,7 @@ >>> with ExpectError(): >>> x = 1 / 0 Traceback (most recent call last): - File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_34126/2664980466.py", line 2, in + File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_2225/2664980466.py", line 2, in x = 1 / 0 ~~^~~ ZeroDivisionError: division by zero (expected) @@ -68,9 +68,9 @@ 3 seconds have passed Traceback (most recent call last): - File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_34126/1223755941.py", line 2, in + File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_2225/1223755941.py", line 2, in long_running_test() - File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_34126/3930412460.py", line 4, in long_running_test + File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_2225/3930412460.py", line 4, in long_running_test time.sleep(1) File "Timeout.ipynb", line 43, in timeout_handler raise TimeoutError() diff --git a/docs/beta/code/Intro_Debugging.py b/docs/beta/code/Intro_Debugging.py index 2434272c..eea7ae80 100755 --- a/docs/beta/code/Intro_Debugging.py +++ b/docs/beta/code/Intro_Debugging.py @@ -3,7 +3,7 @@ # "Introduction to Debugging" - a chapter of "The Debugging Book" # Web site: https://www.debuggingbook.org/html/Intro_Debugging.html -# Last change: 2025-01-06 13:58:51+01:00 +# Last change: 2025-01-07 12:04:41+01:00 # # Copyright (c) 2021-2023 CISPA Helmholtz Center for Information Security # Copyright (c) 2018-2020 Saarland University, authors, and contributors diff --git a/docs/beta/code/PerformanceDebugger.py b/docs/beta/code/PerformanceDebugger.py index 2e148d0f..b9c1b621 100755 --- a/docs/beta/code/PerformanceDebugger.py +++ b/docs/beta/code/PerformanceDebugger.py @@ -3,7 +3,7 @@ # "Debugging Performance Issues" - a chapter of "The Debugging Book" # Web site: https://www.debuggingbook.org/html/PerformanceDebugger.html -# Last change: 2025-01-06 19:02:58+01:00 +# Last change: 2025-01-07 12:12:27+01:00 # # Copyright (c) 2021-2023 CISPA Helmholtz Center for Information Security # Copyright (c) 2018-2020 Saarland University, authors, and contributors @@ -59,11 +59,11 @@ 243 16% for c in s: 244 14% assert tag or not quote 245 0% - 246 16% if c == '<' and not quote: + 246 14% if c == '<' and not quote: 247 2% tag = True - 248 12% elif c == '>' and not quote: + 248 11% elif c == '>' and not quote: 249 2% tag = False - 250 8% elif (c == '"' or c == "'") and tag: + 250 9% elif (c == '"' or c == "'") and tag: 251 0% quote = not quote 252 8% elif not tag: 253 4% out = out + c diff --git a/docs/beta/code/Repairer.py b/docs/beta/code/Repairer.py index c42633e2..b453dc2c 100755 --- a/docs/beta/code/Repairer.py +++ b/docs/beta/code/Repairer.py @@ -3,7 +3,7 @@ # "Repairing Code Automatically" - a chapter of "The Debugging Book" # Web site: https://www.debuggingbook.org/html/Repairer.html -# Last change: 2025-01-06 14:05:53+01:00 +# Last change: 2025-01-07 12:13:29+01:00 # # Copyright (c) 2021-2023 CISPA Helmholtz Center for Information Security # Copyright (c) 2018-2020 Saarland University, authors, and contributors @@ -87,11 +87,6 @@ def middle(x, y, z): # type: ignore The repairer is instantiated with the debugger used (`middle_debugger`): >>> middle_repairer = Repairer(middle_debugger) -/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_21162/108387771.py:15: UserWarning: Can't parse ident - warnings.warn(f"Can't parse {item.__name__}") -/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_21162/108387771.py:15: UserWarning: Can't parse _clean_thread_parent_frames - warnings.warn(f"Can't parse {item.__name__}") - The `repair()` method of the repairer attempts to repair the function invoked by the test (`middle()`). diff --git a/docs/beta/code/Slicer.py b/docs/beta/code/Slicer.py index b6738075..4dcc995b 100755 --- a/docs/beta/code/Slicer.py +++ b/docs/beta/code/Slicer.py @@ -3,7 +3,7 @@ # "Tracking Failure Origins" - a chapter of "The Debugging Book" # Web site: https://www.debuggingbook.org/html/Slicer.html -# Last change: 2025-01-06 13:59:49+01:00 +# Last change: 2025-01-07 12:05:40+01:00 # # Copyright (c) 2021-2023 CISPA Helmholtz Center for Information Security # Copyright (c) 2018-2020 Saarland University, authors, and contributors @@ -75,15 +75,15 @@ >>> with Slicer() as slicer: >>> demo(10) -/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_12030/2454789564.py:22: DeprecationWarning: ast.Str is deprecated and will be removed in Python 3.14; use ast.Constant instead +/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_18911/2454789564.py:22: DeprecationWarning: ast.Str is deprecated and will be removed in Python 3.14; use ast.Constant instead args=[ast.Str(id), value], -/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_12030/3554319793.py:4: DeprecationWarning: ast.Str is deprecated and will be removed in Python 3.14; use ast.Constant instead +/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_18911/3554319793.py:4: DeprecationWarning: ast.Str is deprecated and will be removed in Python 3.14; use ast.Constant instead args=[ast.Str(id), Name(id=id, ctx=Load())], -/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_12030/882995308.py:12: DeprecationWarning: ast.Num is deprecated and will be removed in Python 3.14; use ast.Constant instead +/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_18911/882995308.py:12: DeprecationWarning: ast.Num is deprecated and will be removed in Python 3.14; use ast.Constant instead keywords=[keyword(arg='pos', value=ast.Num(n + 1))] -/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_12030/882995308.py:19: DeprecationWarning: ast.NameConstant is deprecated and will be removed in Python 3.14; use ast.Constant instead +/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_18911/882995308.py:19: DeprecationWarning: ast.NameConstant is deprecated and will be removed in Python 3.14; use ast.Constant instead value=ast.NameConstant(value=True))) -/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_12030/882995308.py:25: DeprecationWarning: ast.Str is deprecated and will be removed in Python 3.14; use ast.Constant instead +/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_18911/882995308.py:25: DeprecationWarning: ast.Str is deprecated and will be removed in Python 3.14; use ast.Constant instead args=[ast.Str(child.arg), @@ -97,7 +97,7 @@ 1 def demo(x: int) -> int: * 2 z = x # <= x (5) * 3 while x <= z <= 64: # <= z (2), z (4), x (5) -* 4 z *= 2 # <= z (4), z (2); <- (3) +* 4 z *= 2 # <= z (2), z (4); <- (3) * 5 return z # <= z (4) diff --git a/docs/beta/code/StackInspector.py b/docs/beta/code/StackInspector.py index befdd5d3..5e0a1ac0 100755 --- a/docs/beta/code/StackInspector.py +++ b/docs/beta/code/StackInspector.py @@ -3,7 +3,7 @@ # "Inspecting Call Stacks" - a chapter of "The Debugging Book" # Web site: https://www.debuggingbook.org/html/StackInspector.html -# Last change: 2025-01-06 14:15:03+01:00 +# Last change: 2025-01-07 13:39:44+01:00 # # Copyright (c) 2021-2023 CISPA Helmholtz Center for Information Security # Copyright (c) 2018-2020 Saarland University, authors, and contributors diff --git a/docs/beta/code/StatisticalDebugger.py b/docs/beta/code/StatisticalDebugger.py index d697e797..157669fb 100755 --- a/docs/beta/code/StatisticalDebugger.py +++ b/docs/beta/code/StatisticalDebugger.py @@ -3,7 +3,7 @@ # "Statistical Debugging" - a chapter of "The Debugging Book" # Web site: https://www.debuggingbook.org/html/StatisticalDebugger.html -# Last change: 2025-01-06 18:55:19+01:00 +# Last change: 2025-01-07 12:06:20+01:00 # # Copyright (c) 2021-2023 CISPA Helmholtz Center for Information Security # Copyright (c) 2018-2020 Saarland University, authors, and contributors @@ -131,17 +131,17 @@ >>> debugger.rank() [('remove_html_markup', 12), - ('remove_html_markup', 13), - ('remove_html_markup', 16), ('remove_html_markup', 2), - ('remove_html_markup', 14), ('remove_html_markup', 11), + ('remove_html_markup', 14), ('remove_html_markup', 3), ('remove_html_markup', 6), ('remove_html_markup', 9), ('remove_html_markup', 1), ('remove_html_markup', 7), ('remove_html_markup', 4), + ('remove_html_markup', 13), + ('remove_html_markup', 16), ('remove_html_markup', 8), ('remove_html_markup', 10)] diff --git a/docs/beta/code/Timeout.py b/docs/beta/code/Timeout.py index c4aab35a..b7bd8789 100755 --- a/docs/beta/code/Timeout.py +++ b/docs/beta/code/Timeout.py @@ -3,7 +3,7 @@ # "Timeout" - a chapter of "The Debugging Book" # Web site: https://www.debuggingbook.org/html/Timeout.html -# Last change: 2025-01-06 14:14:47+01:00 +# Last change: 2025-01-07 13:39:31+01:00 # # Copyright (c) 2021-2023 CISPA Helmholtz Center for Information Security # Copyright (c) 2018-2020 Saarland University, authors, and contributors @@ -51,7 +51,7 @@ >>> print("complete!") >>> except TimeoutError: >>> print("Timeout!") -Timeout! +complete! Note: On Unix/Linux systems, the `Timeout` class uses [`SIGALRM` signals](https://docs.python.org/3.10/library/signal.html) (interrupts) to implement timeouts; this has no effect on performance of the tracked code. On other systems (notably Windows), `Timeout` uses the [`sys.settrace()`](https://docs.python.org/3.10/library/sys.html?highlight=settrace#sys.settrace) function to check the timer after each line of code, which affects performance of the tracked code. diff --git a/docs/beta/code/Timer.py b/docs/beta/code/Timer.py index 14b389a5..7120390a 100755 --- a/docs/beta/code/Timer.py +++ b/docs/beta/code/Timer.py @@ -3,7 +3,7 @@ # "Timer" - a chapter of "The Debugging Book" # Web site: https://www.debuggingbook.org/html/Timer.html -# Last change: 2025-01-06 14:14:42+01:00 +# Last change: 2025-01-07 13:39:28+01:00 # # Copyright (c) 2021-2023 CISPA Helmholtz Center for Information Security # Copyright (c) 2018-2020 Saarland University, authors, and contributors @@ -47,7 +47,7 @@ >>> with Timer() as t: >>> some_long_running_function() >>> t.elapsed_time() -0.019066834007389843 +0.019929499999307154 For more details, source, and documentation, see diff --git a/docs/beta/code/Tours.py b/docs/beta/code/Tours.py index dd145c1d..1d34bc67 100755 --- a/docs/beta/code/Tours.py +++ b/docs/beta/code/Tours.py @@ -3,7 +3,7 @@ # "Tours through the Book" - a chapter of "The Debugging Book" # Web site: https://www.debuggingbook.org/html/Tours.html -# Last change: 2025-01-07 11:33:11+01:00 +# Last change: 2025-01-07 12:04:27+01:00 # # Copyright (c) 2021-2023 CISPA Helmholtz Center for Information Security # Copyright (c) 2018-2020 Saarland University, authors, and contributors diff --git a/docs/beta/code/Tracer.py b/docs/beta/code/Tracer.py index f564c10b..1e6a46db 100755 --- a/docs/beta/code/Tracer.py +++ b/docs/beta/code/Tracer.py @@ -3,7 +3,7 @@ # "Tracing Executions" - a chapter of "The Debugging Book" # Web site: https://www.debuggingbook.org/html/Tracer.html -# Last change: 2025-01-06 18:54:17+01:00 +# Last change: 2025-01-07 12:04:57+01:00 # # Copyright (c) 2021-2023 CISPA Helmholtz Center for Information Security # Copyright (c) 2018-2020 Saarland University, authors, and contributors diff --git a/docs/beta/code/Tracking.py b/docs/beta/code/Tracking.py index 1830bf31..65e1c20e 100755 --- a/docs/beta/code/Tracking.py +++ b/docs/beta/code/Tracking.py @@ -3,7 +3,7 @@ # "Tracking Bugs" - a chapter of "The Debugging Book" # Web site: https://www.debuggingbook.org/html/Tracking.html -# Last change: 2025-01-06 18:59:15+01:00 +# Last change: 2025-01-07 13:31:50+01:00 # # Copyright (c) 2021-2023 CISPA Helmholtz Center for Information Security # Copyright (c) 2018-2020 Saarland University, authors, and contributors diff --git a/docs/beta/dist/debuggingbook-1.2.4.tar.gz b/docs/beta/dist/debuggingbook-1.2.4.tar.gz index 1b548ce0..205752a2 100644 Binary files a/docs/beta/dist/debuggingbook-1.2.4.tar.gz and b/docs/beta/dist/debuggingbook-1.2.4.tar.gz differ diff --git a/docs/beta/dist/debuggingbook-code.zip b/docs/beta/dist/debuggingbook-code.zip index 7c15b085..084e8693 100644 Binary files a/docs/beta/dist/debuggingbook-code.zip and b/docs/beta/dist/debuggingbook-code.zip differ diff --git a/docs/beta/dist/debuggingbook-notebooks.zip b/docs/beta/dist/debuggingbook-notebooks.zip index 4d934884..dcd22a82 100644 Binary files a/docs/beta/dist/debuggingbook-notebooks.zip and b/docs/beta/dist/debuggingbook-notebooks.zip differ diff --git a/docs/beta/html/00_Table_of_Contents.html b/docs/beta/html/00_Table_of_Contents.html index 0239a8e0..273b322c 100644 --- a/docs/beta/html/00_Table_of_Contents.html +++ b/docs/beta/html/00_Table_of_Contents.html @@ -12311,7 +12311,7 @@

Inspecting Call St The content of this project is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. The source code that is part of the content, as well as the source code used to format and display that content is licensed under the MIT License. -Last change: 2025-01-07 11:36:02+01:00 • +Last change: 2025-01-07 14:12:27+01:00CiteImprint

@@ -12327,7 +12327,7 @@

Inspecting Call St

How to Cite this Work

-Andreas Zeller: "The Debugging Book". In Andreas Zeller, "The Debugging Book", https://www.debuggingbook.org/beta/html/00_Table_of_Contents.html. Retrieved 2025-01-07 11:36:02+01:00. +Andreas Zeller: "The Debugging Book". In Andreas Zeller, "The Debugging Book", https://www.debuggingbook.org/beta/html/00_Table_of_Contents.html. Retrieved 2025-01-07 14:12:27+01:00.

 @incollection{debuggingbook2025:00_Table_of_Contents,
@@ -12337,9 +12337,9 @@ 

How to Cite this Work

year = {2025}, publisher = {CISPA Helmholtz Center for Information Security}, howpublished = {\url{https://www.debuggingbook.org/beta/html/00_Table_of_Contents.html}}, - note = {Retrieved 2025-01-07 11:36:02+01:00}, + note = {Retrieved 2025-01-07 14:12:27+01:00}, url = {https://www.debuggingbook.org/beta/html/00_Table_of_Contents.html}, - urldate = {2025-01-07 11:36:02+01:00} + urldate = {2025-01-07 14:12:27+01:00} }
diff --git a/docs/beta/html/404.html b/docs/beta/html/404.html index 99ef03ba..069a8350 100644 --- a/docs/beta/html/404.html +++ b/docs/beta/html/404.html @@ -12126,7 +12126,7 @@
Traceback (most recent call last):
-  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_36872/1830731544.py", line 4, in <module>
+  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_4590/1830731544.py", line 4, in <module>
     raise NotFoundError
 NotFoundError: '404' (expected)
 
diff --git a/docs/beta/html/Alhazen.html b/docs/beta/html/Alhazen.html index 380c66a5..525db186 100644 --- a/docs/beta/html/Alhazen.html +++ b/docs/beta/html/Alhazen.html @@ -12078,145 +12078,114 @@ - - + + Tree - + 0 - -<lead-digit> <= 4.5 -gini = 0.5 -samples = 1807 -value = [1.0, 1.0] -class = NO_BUG + +<term> <= -11.5 +gini = 0.5 +samples = 679 +value = [1.0, 1.0] +class = NO_BUG 1 - -<function> == 'sqrt' <= 0.5 -gini = 0.33 -samples = 514 -value = [1.0, 0.263] -class = BUG + +<term> <= -42.297 +gini = 0.372 +samples = 238 +value = [1.0, 0.329] +class = BUG 0->1 - - -True + + +True - + 10 - -gini = -0.0 -samples = 1293 -value = [0.0, 0.737] -class = NO_BUG + +gini = 0.0 +samples = 441 +value = [0.0, 0.671] +class = NO_BUG - + 0->10 - - -False + + +False 2 - -gini = -0.0 -samples = 291 -value = [0.0, 0.166] -class = NO_BUG + +gini = 0.0 +samples = 180 +value = [0.0, 0.274] +class = NO_BUG 1->2 - - + + - + -3 - -<value> <= 42.2 -gini = 0.162 -samples = 223 -value = [1.0, 0.097] -class = BUG +5 + +<function> == 'sqrt' <= 0.5 +gini = 0.098 +samples = 58 +value = [1.0, 0.055] +class = BUG - + -1->3 - - +1->5 + + - + -4 - -<term> <= -11.847 -gini = 0.06 -samples = 108 -value = [1.0, 0.032] -class = BUG +6 + +gini = 0.0 +samples = 36 +value = [0.0, 0.055] +class = NO_BUG - + -3->4 - - +5->6 + + - -9 - -gini = -0.0 -samples = 115 -value = [0.0, 0.066] -class = NO_BUG - - - -3->9 - - - - -5 - -gini = 0.0 -samples = 52 -value = [1.0, 0.0] -class = BUG +9 + +gini = 0.0 +samples = 22 +value = [1.0, 0.0] +class = BUG - + -4->5 - - - - - -6 - -gini = 0.0 -samples = 56 -value = [0.0, 0.032] -class = NO_BUG - - - -4->6 - - +5->9 + + @@ -12241,17 +12210,14 @@ The saturation of nodes also indicates purity – the higher the saturation, the higher the purity.

There is also a text version available, with much fewer (but hopefully still essential) details:

>>> print(alhazen.friendly_decision_tree())
-if <lead-digit> <= 4.5000:
-  if <function> == 'sqrt':
-    if <value> <= 42.2000:
-      if <term> <= -11.8470:
-        BUG
-      else:
-        NO_BUG
+if <term> <= -11.5000:
+  if <term> <= -42.2970:
+    NO_BUG
+  else:
+    if <function> == 'sqrt':
+      BUG
     else:
       NO_BUG
-  else:
-    NO_BUG
 else:
   NO_BUG
 
@@ -13658,8 +13624,8 @@ num(<value>), num(<lead-digit>), num(<digit>), - num(<digits>), - num(<integer>)] + num(<integer>), + num(<digits>)]
@@ -13735,8 +13701,8 @@ '<value>', '<lead-digit>', '<digit>', - '<digits>', - '<integer>'] + '<integer>', + '<digits>'] @@ -13855,8 +13821,8 @@ num(<value>) num(<lead-digit>) num(<digit>) - num(<digits>) num(<integer>) + num(<digits>) @@ -13881,8 +13847,8 @@ 900.00 9.0 0.0 - 0.0 900.0 + 0.0 1 @@ -13905,8 +13871,8 @@ 24.00 2.0 4.0 - 4.0 24.0 + 4.0 2 @@ -13929,8 +13895,8 @@ 3.14 NaN 4.0 - 14.0 3.0 + 14.0 @@ -14038,8 +14004,8 @@ num(<value>): 900.0 num(<lead-digit>): 9.0 num(<digit>): 0.0 - num(<digits>): 0.0 num(<integer>): 900.0 + num(<digits>): 0.0 Features of sin(24): exists(<start>): 1 exists(<start> == <function>(<term>)): 1 @@ -14085,8 +14051,8 @@ num(<value>): 24.0 num(<lead-digit>): 2.0 num(<digit>): 4.0 - num(<digits>): 4.0 num(<integer>): 24.0 + num(<digits>): 4.0 Features of cos(-3.14): exists(<start>): 1 exists(<start> == <function>(<term>)): 1 @@ -14132,8 +14098,8 @@ num(<value>): 3.14 num(<lead-digit>): nan num(<digit>): 4.0 - num(<digits>): 14.0 num(<integer>): 3.0 + num(<digits>): 14.0 @@ -16026,12 +15992,12 @@
-
function-sqrt > 0.5, number <= 13.0
-function-sqrt <= 0.5, number <= 13.0
-function-sqrt > 0.5
+
function-sqrt > 0.5, number > 13.0
+function-sqrt > 0.5, number <= 13.0
 function-sqrt <= 0.5
+function-sqrt > 0.5
+function-sqrt <= 0.5, number <= 13.0
 function-sqrt <= 0.5, number > 13.0
-function-sqrt > 0.5, number > 13.0
 
@@ -17152,228 +17118,235 @@
-
Features: exists(<start>), <start> == '<function>(<term>)', exists(<function>), <function> == 'sqrt', <function> == 'tan', <function> == 'cos', <function> == 'sin', exists(<term>), <term> == '-<value>', <term> == '<value>', exists(<value>), <value> == '<integer>.<digits>', <value> == '<integer>', exists(<integer>), <integer> == '<lead-digit><digits>', <integer> == '<digit>', exists(<digits>), <digits> == '<digit><digits>', <digits> == '<digit>', exists(<lead-digit>), <lead-digit> == '1', <lead-digit> == '2', <lead-digit> == '3', <lead-digit> == '4', <lead-digit> == '5', <lead-digit> == '6', <lead-digit> == '7', <lead-digit> == '8', <lead-digit> == '9', exists(<digit>), <digit> == '0', <digit> == '1', <digit> == '2', <digit> == '3', <digit> == '4', <digit> == '5', <digit> == '6', <digit> == '7', <digit> == '8', <digit> == '9', <term>, <value>, <lead-digit>, <digit>, <digits>, <integer>
+
Features: exists(<start>), <start> == '<function>(<term>)', exists(<function>), <function> == 'sqrt', <function> == 'tan', <function> == 'cos', <function> == 'sin', exists(<term>), <term> == '-<value>', <term> == '<value>', exists(<value>), <value> == '<integer>.<digits>', <value> == '<integer>', exists(<integer>), <integer> == '<lead-digit><digits>', <integer> == '<digit>', exists(<digits>), <digits> == '<digit><digits>', <digits> == '<digit>', exists(<lead-digit>), <lead-digit> == '1', <lead-digit> == '2', <lead-digit> == '3', <lead-digit> == '4', <lead-digit> == '5', <lead-digit> == '6', <lead-digit> == '7', <lead-digit> == '8', <lead-digit> == '9', exists(<digit>), <digit> == '0', <digit> == '1', <digit> == '2', <digit> == '3', <digit> == '4', <digit> == '5', <digit> == '6', <digit> == '7', <digit> == '8', <digit> == '9', <term>, <value>, <lead-digit>, <digit>, <integer>, <digits>
 
 Iteration #1
   Decision Tree:
-    if <integer> == '<lead-digit><digits>':
-      BUG
-    else:
+    if <digits> <= nan:
       NO_BUG
+    else:
+      BUG
 
   New input specifications:
-    <integer> == '<lead-digit><digits>'
-    <integer> == '<lead-digit><digits>'
   New samples:
-    tan(85), sqrt(8.90)
+    tan(85), cos(-163), sin(-27.60), sqrt(-5), tan(2046.977), sin(-3.11), sqrt(-19.982), sqrt(-8.67), cos(-275), cos(3863), sqrt(-0.01), cos(-8.62380), cos(8), tan(2), cos(31.9), sin(12.9), tan(6.91), cos(-43.9), cos(-9), sin(-2.0), cos(-9.793), sin(761.0), cos(-312), sin(-216.2), sqrt(-1.6), cos(3), sqrt(-488), cos(6.65), sin(46.8), tan(-798), cos(-6.82), sin(19.50), cos(-8), sqrt(-7.3), sin(3.84), tan(-57.276), tan(99), tan(611), sin(9), cos(-1), sin(-5.0), tan(-48.5), tan(482235.4), sin(3368), sin(19.3), sqrt(5), tan(2), tan(-7), sqrt(-6.649), cos(9.9730), tan(-2), sqrt(3966), cos(55), sin(-3), sqrt(752.7), cos(8.0013), cos(-36.29), cos(-611), cos(5), sqrt(-1.014), tan(-5), tan(-38.6), tan(-70), sin(-9), cos(-48), cos(1893), cos(99.83), tan(-7.80), tan(327.39), cos(-35708), cos(-987.85), tan(-15.3), tan(-8785596.0), tan(-4), sqrt(9.283), tan(3.95), tan(-6), sqrt(-20.0), cos(-66.319), tan(0), sin(-4), sin(7.1), cos(-5), sin(-33), tan(-6.46058), sin(-9.6), sin(-5831.1), sqrt(49), tan(5.7), sqrt(-16.43), sin(1), tan(6.556), cos(-4), cos(-7962), tan(102), tan(291.7), sqrt(-64.4), tan(23942.0182), tan(-8.4348), cos(-9)
 
 Iteration #2
   Decision Tree:
-    if <term> == '-<value>':
-      BUG
+    if <lead-digit> <= 2.5000:
+      if <function> == 'sqrt':
+        BUG
+      else:
+        NO_BUG
     else:
       NO_BUG
 
   New input specifications:
-    <term> == '-<value>'
-    <term> == '-<value>'
+    <function> == 'sqrt' and <lead-digit> <= 2.5
+    <function> == 'sqrt' and <lead-digit> > 2.5
+    <function> == 'sqrt' and <lead-digit> <= 2.5
+    <function> == 'sqrt' and <lead-digit> > 2.5
+    <lead-digit> > 2.5
+    <lead-digit> <= 2.5
   New samples:
-    sin(19), sqrt(-5)
+    cos(24), sqrt(85.93), sqrt(-24), cos(6726.274), cos(-3424.3), sin(243)
 
 Iteration #3
   Decision Tree:
-    if <term> <= -10.5000:
-      BUG
+    if <lead-digit> <= 2.5000:
+      if <function> == 'sqrt':
+        BUG
+      else:
+        if <function> == 'tan':
+          NO_BUG
+        else:
+          NO_BUG
     else:
       NO_BUG
 
   New input specifications:
-    <term> <= -10.5
-    <term> > -10.5
+    <function> == 'sqrt' and <function> == 'tan' and <lead-digit> > 2.5
+    <function> == 'sqrt' and <function> == 'tan' and <lead-digit> <= 2.5
+    <function> == 'sqrt' and <lead-digit> <= 2.5
+    <function> == 'sqrt' and <function> == 'tan' and <lead-digit> <= 2.5
+    <function> == 'sqrt' and <lead-digit> <= 2.5
+    <function> == 'sqrt' and <lead-digit> > 2.5
+    <lead-digit> > 2.5
+    <function> == 'sqrt' and <function> == 'tan' and <lead-digit> > 2.5
+    <lead-digit> <= 2.5
   New samples:
-    sin(-17.6), sqrt(-9)
+    tan(-97.8), tan(-23), sin(15.1), cos(13), sqrt(281), sqrt(-422.2), cos(-637), sin(-81), tan(17.3367)
 
 Iteration #4
   Decision Tree:
-    if <term> <= -12.5000:
-      if <value> <= 16.8000:
-        BUG
+    if <function> == 'sqrt':
+      if <lead-digit> <= 2.5000:
+        if <digit> == '1':
+          NO_BUG
+        else:
+          BUG
       else:
         NO_BUG
     else:
       NO_BUG
 
   New input specifications:
-    <term> <= -12.5 and <value> <= 16.800000190734863
-    <term> <= -12.5
-    <term> > -12.5 and <value> > 16.800000190734863
-    <term> > -12.5 and <value> <= 16.800000190734863
-    <term> <= -12.5 and <value> > 16.800000190734863
-    <term> > -12.5
+    <function> == 'sqrt' and <lead-digit> > 2.5
+    <function> == 'sqrt' and <lead-digit> <= 2.5
+    <function> == 'sqrt' and <lead-digit> > 2.5
+    <digit> == '1' and <function> == 'sqrt' and <lead-digit> > 2.5
+    <function> == 'sqrt'
+    <function> == 'sqrt'
+    <digit> == '1' and <function> == 'sqrt' and <lead-digit> <= 2.5
+    <digit> == '1' and <function> == 'sqrt' and <lead-digit> > 2.5
+    <digit> == '1' and <function> == 'sqrt' and <lead-digit> <= 2.5
   New samples:
-    sqrt(-7.274), tan(-94), tan(-8.3), sin(-482.0), tan(-1.9), sin(6), tan(-49), sin(-1), tan(8.49), tan(-8337.258), sqrt(5.5), sin(0), sin(-58.094), sqrt(2), sin(13), tan(-4), sin(-2), sqrt(-68), sqrt(-44), tan(-4), sqrt(9.996978), cos(-9.5), tan(-980), tan(5.56118), sqrt(-1), sqrt(2), cos(-8), tan(-3), sqrt(2.4), sqrt(2.5), tan(4.704), sin(-4), sqrt(-6), tan(9), tan(7.3), cos(-6), sin(4), tan(-8), sqrt(-7409), sin(-5880), sqrt(-3), sin(-449), sin(-52), cos(-4), sqrt(-97), sin(2), cos(-8.7), tan(3.0), sqrt(-66.9), sqrt(-0), sqrt(-33.6), cos(-0), sqrt(5.299), sqrt(-8.9), sqrt(-58.8), sin(-9), tan(-55.7016), sin(-1585.1), tan(-238), cos(-42), sin(-30), cos(-4), sin(-3.1), sin(-1.4), cos(-5), cos(-2.4), cos(9), tan(-96.9), tan(-50.5), tan(-3.5), sqrt(8), tan(-25.06869625), sqrt(7.6), tan(-94.2), cos(-63.88), tan(7), tan(-3.08), cos(-9.932), sin(-991.8), sin(92.0), sin(3), cos(-7424.8), cos(726.158)
+    sqrt(4307), sqrt(208), cos(-989), sqrt(-8047662286.62), sqrt(7.9), sin(0), sqrt(294.7), sqrt(44.1), sqrt(11.7)
 
 Iteration #5
   Decision Tree:
-    if <lead-digit> <= 3.5000:
+    if <lead-digit> <= 2.5000:
       if <function> == 'sqrt':
-        BUG
+        if <term> == '-<value>':
+          BUG
+        else:
+          NO_BUG
       else:
         NO_BUG
     else:
-      if <lead-digit> == '8':
-        NO_BUG
-      else:
-        NO_BUG
+      NO_BUG
 
   New input specifications:
-    <lead-digit> == '8' and <lead-digit> <= 3.5
-    <function> == 'sqrt' and <lead-digit> > 3.5
-    <function> == 'sqrt' and <lead-digit> > 3.5
-    <lead-digit> == '8' and <lead-digit> > 3.5
-    <function> == 'sqrt' and <lead-digit> <= 3.5
-    <lead-digit> == '8' and <lead-digit> > 3.5
-    <lead-digit> == '8' and <lead-digit> <= 3.5
-    <function> == 'sqrt' and <lead-digit> <= 3.5
+    <function> == 'sqrt' and <lead-digit> <= 2.5
+    <function> == 'sqrt' and <term> == '-<value>' and <lead-digit> <= 2.5
+    <function> == 'sqrt' and <lead-digit> <= 2.5
+    <function> == 'sqrt' and <lead-digit> > 2.5
+    <function> == 'sqrt' and <term> == '-<value>' and <lead-digit> <= 2.5
+    <function> == 'sqrt' and <term> == '-<value>' and <lead-digit> > 2.5
+    <function> == 'sqrt' and <term> == '-<value>' and <lead-digit> > 2.5
+    <lead-digit> > 2.5
+    <lead-digit> <= 2.5
   New samples:
-    tan(-34191), cos(877), sin(301.8502), cos(-2412.6425), sin(339.318), sqrt(-208692.0), cos(35), cos(-12), sin(32), sqrt(148.3), sqrt(-274594.6377), tan(-25), tan(-10.41976), tan(-80652), cos(-889163.92), sqrt(163156.5), tan(114), sqrt(-63.9), tan(-8562.6), sin(909.1), tan(37987), sin(-81.7), sqrt(11.60), sqrt(14.800)
+    cos(-142.8), sqrt(37.81), sin(20.9), tan(1818), sqrt(-214.433), sqrt(52.097), sqrt(8.1), sqrt(2.02), sqrt(68), tan(20), sqrt(8), sqrt(66.25), sqrt(4.87), sqrt(9), sqrt(1), sqrt(97.26), sin(12), sqrt(91), cos(224.07), sqrt(47.2843), sqrt(85.51), sqrt(63.568), sqrt(78.79), sin(21), sqrt(84), sqrt(966.64), cos(2110486864), cos(24), tan(22692.3), sqrt(0), sqrt(-2), tan(-268.8), sqrt(941.4), sin(1325), sqrt(-37), cos(136), tan(-136.2), cos(-145396), sqrt(-920), sqrt(-8.197), sqrt(3), sin(1959.68), sqrt(-6.35), sqrt(5.9), cos(-29), sqrt(-2.0), sqrt(6), sqrt(-61.61), sqrt(72.097906), sqrt(-6.98876), sqrt(-64.82749), tan(-21.3), tan(22), sqrt(-64009.27), tan(-192), sqrt(95.80), sqrt(8.48), sqrt(85.3514), sqrt(7), sqrt(-596), tan(-25), sin(98), sqrt(-187), sqrt(62.4), sqrt(-830), cos(-878.2), sin(-19.70)
 
 Iteration #6
   Decision Tree:
-    if <digit> == '6':
-      if <digits> <= 6.5000:
-        if <integer> <= 11.5000:
+    if <term> <= -15.6500:
+      if <integer> <= 37.5000:
+        if <function> == 'sqrt':
+          BUG
+        else:
+          if <value> == '<integer>.<digits>':
+            NO_BUG
+          else:
+            NO_BUG
+      else:
+        if <value> == '<integer>':
           NO_BUG
         else:
-          BUG
+          NO_BUG
+    else:
+      if <lead-digit> == '2':
+        NO_BUG
       else:
         NO_BUG
-    else:
-      NO_BUG
 
   New input specifications:
-    <digit> == '6'
-    <digit> == '6' and <digits> > 6.5
-    <digit> == '6' and <digits> > 6.5 and <integer> > 11.5
-    <digit> == '6' and <digits> > 6.5 and <integer> <= 11.5
-    <digit> == '6' and <digits> > 6.5
-    <digit> == '6' and <digits> <= 6.5 and <integer> > 11.5
-    <digit> == '6' and <digits> <= 6.5 and <integer> <= 11.5
-    <digit> == '6' and <digits> <= 6.5
-    <digit> == '6'
+    <value> == '<integer>' and <integer> <= 37.5 and <term> > -15.650000095367432
+    <function> == 'sqrt' and <value> == '<integer>.<digits>' and <integer> > 37.5 and <term> > -15.650000095367432
+    <value> == '<integer>' and <integer> <= 37.5 and <term> > -15.650000095367432
+    <value> == '<integer>' and <integer> > 37.5 and <term> > -15.650000095367432
+    <value> == '<integer>' and <integer> > 37.5 and <term> <= -15.650000095367432
+    <lead-digit> == '2' and <term> <= -15.650000095367432
+    <lead-digit> == '2' and <term> <= -15.650000095367432
+    <function> == 'sqrt' and <integer> > 37.5 and <term> > -15.650000095367432
+    <value> == '<integer>' and <integer> <= 37.5 and <term> <= -15.650000095367432
+    <function> == 'sqrt' and <value> == '<integer>.<digits>' and <integer> <= 37.5 and <term> <= -15.650000095367432
+    <function> == 'sqrt' and <value> == '<integer>.<digits>' and <integer> > 37.5 and <term> <= -15.650000095367432
+    <function> == 'sqrt' and <value> == '<integer>.<digits>' and <integer> > 37.5 and <term> <= -15.650000095367432
+    <function> == 'sqrt' and <value> == '<integer>.<digits>' and <integer> <= 37.5 and <term> > -15.650000095367432
+    <lead-digit> == '2' and <term> > -15.650000095367432
+    <function> == 'sqrt' and <integer> <= 37.5 and <term> > -15.650000095367432
+    <function> == 'sqrt' and <value> == '<integer>.<digits>' and <integer> <= 37.5 and <term> <= -15.650000095367432
+    <function> == 'sqrt' and <integer> <= 37.5 and <term> <= -15.650000095367432
+    <lead-digit> == '2' and <term> > -15.650000095367432
+    <function> == 'sqrt' and <integer> > 37.5 and <term> <= -15.650000095367432
+    <function> == 'sqrt' and <value> == '<integer>.<digits>' and <integer> > 37.5 and <term> > -15.650000095367432
+    <value> == '<integer>' and <integer> <= 37.5 and <term> <= -15.650000095367432
+    <value> == '<integer>' and <integer> > 37.5 and <term> > -15.650000095367432
+    <value> == '<integer>' and <integer> > 37.5 and <term> <= -15.650000095367432
+    <function> == 'sqrt' and <value> == '<integer>.<digits>' and <integer> <= 37.5 and <term> > -15.650000095367432
   New samples:
-    tan(-96), cos(808583.5), tan(-8226), sqrt(6.23), cos(-2998.861), cos(71), sin(-293.06), tan(-30.4), sin(-42), tan(20), sqrt(-48.56), sqrt(66.25), sin(668.066), sqrt(97.26), sin(12), sin(-943468113), sqrt(91), sin(54), sqrt(-84), cos(30.0), sqrt(2.5), sin(6), sqrt(8.1), sqrt(-41.6), sqrt(6), tan(3.03), tan(46), tan(3.2), sin(3.41760), cos(-5.3), sin(-16), sqrt(-2.0), sqrt(6), sqrt(-6.98876), cos(806), sin(4.7)
+    tan(4), sin(201464.99), cos(31.11), tan(96235169), cos(-656), sqrt(-93.8), sin(-292311), sqrt(94209), tan(-27.17), tan(-181.653), tan(-31), cos(-48.77), cos(2.8), sin(3.2), cos(-2680432.44), sin(2.708), sin(-34), cos(1.257), cos(8.1), tan(-2639.9), cos(4.475), cos(-49117.007), tan(-0.68), sin(7.20), sin(4.80910), sin(-7.313), cos(-8.0), tan(-2.3), cos(2.6), cos(30.30), cos(-69.4), cos(8.4), sin(9.9), sin(36.8), sin(-17), tan(-404.0), cos(-92.6409), sin(-8763), cos(-90.64), tan(-8), cos(10.3), sqrt(8.309), tan(-35), sqrt(-21), sin(29.35), sqrt(-41.033), cos(64), sqrt(-6), cos(-79), cos(-1), tan(1), cos(2), sqrt(-837), tan(-3), sin(-894), tan(-4), cos(-43), cos(7), sin(3), cos(6), sqrt(-95), tan(9), cos(-23.0), cos(2), cos(-10), sin(6), sin(-627344826), cos(-55), sqrt(-9), sqrt(-3), sqrt(-7), tan(-6175), cos(-9), tan(-471458), sqrt(-52), cos(-6), sin(-7), sqrt(-90), cos(0), sin(35), cos(8), tan(-1), sqrt(-7), tan(-46059), sin(90.04), sin(-78186.9), cos(8.4)
 
 Iteration #7
   Decision Tree:
-    if <lead-digit> <= 4.5000:
-      if <function> == 'sqrt':
-        if <digits> <= 27.0000:
-          if <term> <= -42.8000:
-            NO_BUG
-          else:
+    if <function> == 'sqrt':
+      if <lead-digit> <= 4.5000:
+        if <value> <= 42.5665:
+          if <term> <= -11.5000:
             BUG
-        else:
-          if <lead-digit> == '1':
-            NO_BUG
           else:
             NO_BUG
-      else:
-        if <lead-digit> <= 1.5000:
-          NO_BUG
         else:
           NO_BUG
-    else:
-      if <digit> == '4':
-        NO_BUG
       else:
         NO_BUG
+    else:
+      NO_BUG
 
   New input specifications:
-    <function> == 'sqrt' and <digits> <= 27.0 and <lead-digit> > 4.5 and <term> > -42.79999923706055
-    <function> == 'sqrt' and <digits> > 27.0 and <lead-digit> > 4.5 and <term> <= -42.79999923706055
-    <digit> == '4' and <lead-digit> > 4.5
-    <digit> == '4' and <lead-digit> <= 4.5
-    <function> == 'sqrt' and <digits> > 27.0 and <lead-digit> <= 4.5 and <term> <= -42.79999923706055
-    <function> == 'sqrt' and <lead-digit> == '1' and <digits> > 27.0 and <lead-digit> <= 4.5
-    <function> == 'sqrt' and <digits> <= 27.0 and <lead-digit> <= 4.5 and <term> > -42.79999923706055
-    <function> == 'sqrt' and <lead-digit> <= 1.5
-    <function> == 'sqrt' and <lead-digit> == '1' and <digits> <= 27.0 and <lead-digit> <= 4.5
-    <function> == 'sqrt' and <lead-digit> == '1' and <digits> <= 27.0 and <lead-digit> > 4.5
-    <function> == 'sqrt' and <lead-digit> <= 1.5
-    <function> == 'sqrt' and <lead-digit> > 1.5
-    <function> == 'sqrt' and <digits> <= 27.0 and <lead-digit> > 4.5 and <term> <= -42.79999923706055
-    <function> == 'sqrt' and <digits> > 27.0 and <lead-digit> <= 4.5 and <term> > -42.79999923706055
-    <function> == 'sqrt' and <lead-digit> == '1' and <digits> > 27.0 and <lead-digit> <= 4.5
-    <function> == 'sqrt' and <digits> > 27.0 and <lead-digit> > 4.5 and <term> > -42.79999923706055
-    <function> == 'sqrt' and <lead-digit> == '1' and <digits> > 27.0 and <lead-digit> > 4.5
-    <function> == 'sqrt' and <lead-digit> == '1' and <digits> <= 27.0 and <lead-digit> > 4.5
-    <digit> == '4' and <lead-digit> <= 4.5
-    <function> == 'sqrt' and <digits> <= 27.0 and <lead-digit> <= 4.5 and <term> <= -42.79999923706055
-    <function> == 'sqrt' and <lead-digit> == '1' and <digits> <= 27.0 and <lead-digit> <= 4.5
-    <function> == 'sqrt' and <lead-digit> == '1' and <digits> > 27.0 and <lead-digit> > 4.5
-    <digit> == '4' and <lead-digit> > 4.5
+    <function> == 'sqrt' and <lead-digit> > 4.5 and <value> > 42.56649971008301
+    <function> == 'sqrt' and <lead-digit> > 4.5 and <term> > -11.5 and <value> > 42.56649971008301
+    <function> == 'sqrt' and <lead-digit> <= 4.5 and <term> <= -11.5 and <value> > 42.56649971008301
+    <function> == 'sqrt' and <lead-digit> > 4.5 and <term> <= -11.5 and <value> > 42.56649971008301
+    <function> == 'sqrt' and <lead-digit> > 4.5 and <term> > -11.5 and <value> <= 42.56649971008301
+    <function> == 'sqrt' and <lead-digit> <= 4.5 and <value> > 42.56649971008301
+    <function> == 'sqrt'
+    <function> == 'sqrt' and <lead-digit> <= 4.5 and <term> > -11.5 and <value> > 42.56649971008301
+    <function> == 'sqrt' and <lead-digit> > 4.5 and <value> <= 42.56649971008301
+    <function> == 'sqrt'
+    <function> == 'sqrt' and <lead-digit> > 4.5
+    <function> == 'sqrt' and <lead-digit> > 4.5 and <term> <= -11.5 and <value> <= 42.56649971008301
+    <function> == 'sqrt' and <lead-digit> <= 4.5 and <term> <= -11.5 and <value> <= 42.56649971008301
+    <function> == 'sqrt' and <lead-digit> <= 4.5
+    <function> == 'sqrt' and <lead-digit> <= 4.5 and <value> <= 42.56649971008301
+    <function> == 'sqrt' and <lead-digit> <= 4.5 and <term> > -11.5 and <value> <= 42.56649971008301
+    <function> == 'sqrt' and <lead-digit> > 4.5
   New samples:
-    sqrt(83), sqrt(-830), sin(-788.5723), cos(396), sqrt(-49.50), sqrt(-7.665), sqrt(7661), sqrt(-67.127361), sqrt(4.09702314), sqrt(0.437), sqrt(-5.715527), sqrt(-1091.59), sqrt(-7.4415), tan(-483), sin(201464.99), sqrt(3.98215), sqrt(301), sqrt(24), tan(339), tan(-351.63), sqrt(-614609.5), sqrt(80.797), sqrt(-977.9884), sin(-33545), tan(488.3), tan(-4555), cos(44592), sqrt(206.6), sin(19), sqrt(41.2), sqrt(-95), sqrt(63.1), sqrt(-93.8), sqrt(62.3), sqrt(-132718.007), cos(-583.7), sin(-68), cos(-98), sin(-511), sin(-59), sqrt(-81620.2), sin(-80), sqrt(-7422), sqrt(-9330640.7), tan(-60.0), sqrt(-295.3), sin(4684), sqrt(7.535), sqrt(55.69), sqrt(15.1), sin(-14.67), sqrt(-361), sqrt(-6.2473), tan(16.684782), sin(29858.3), cos(30.92), cos(2640.806), sqrt(-175), sqrt(-7.86), sqrt(-29866.5318), sqrt(995.82), tan(36442), sqrt(152.0), sqrt(8348), sqrt(-6656), sqrt(16.62102), sqrt(76477.73844), sqrt(-13.58), sqrt(676.5), sqrt(-8252.8), sqrt(98), cos(2905.4), sqrt(-419.1), cos(13), sqrt(-192.6), cos(-14), tan(108), sqrt(-21), sqrt(-32), sqrt(-1730), sqrt(14.75), sqrt(616371.7), tan(84.0)
+    sqrt(54), sqrt(85524), sqrt(-350162), sqrt(-95), sqrt(9), sqrt(-5), sqrt(689.2), sqrt(586), sqrt(22.95), sqrt(6.7), sqrt(8.349248), sqrt(6.89), sqrt(6), sqrt(3.03), sqrt(-1.333), sqrt(621676), sqrt(5.198), sqrt(39.80), sqrt(-9.7), sqrt(61), sqrt(1.44), sqrt(4924), sqrt(4.4), sqrt(3521), sqrt(51), sqrt(-8.82), sqrt(6.2), sqrt(-9.4), sqrt(8.02), sqrt(-20), sqrt(908), sqrt(17.9), sqrt(-88.8), sqrt(-5), sqrt(-84.806), sqrt(-9.1), sqrt(-25.63), sqrt(15.1), sqrt(-8), sqrt(-6), sqrt(-37.2), sqrt(8), sqrt(3), sqrt(-8.8), sqrt(-3), sqrt(6), sqrt(-31), tan(1.9), sin(-77.78), sqrt(-30.40), sqrt(-62.0), tan(-22), sqrt(-2982), sqrt(-2399), tan(-25), sqrt(38.986), sqrt(20), sqrt(28), sqrt(40), sqrt(7.34), sqrt(-9.1), sin(-11), sqrt(2), cos(26.44), sqrt(3), sin(32.8), sqrt(4.31), sqrt(-2), sqrt(190.15), sqrt(0), sqrt(-1.683), sqrt(4.8), sqrt(-4.4), sqrt(4), sqrt(-8), sin(13.857), sqrt(4.7), sqrt(1), sqrt(7.9), sqrt(332.3), cos(14), sqrt(-789)
 
 Iteration #8
   Decision Tree:
-    if <lead-digit> <= 4.5000:
-      if <function> == 'sqrt':
-        if <value> <= 42.8000:
-          if <term> <= -0.9900:
-            BUG
-          else:
-            if <digit> == '1':
-              NO_BUG
-            else:
-              NO_BUG
+    if <term> <= -15.6500:
+      if <term> <= -42.0165:
+        if <digit> == '8':
+          NO_BUG
         else:
           NO_BUG
       else:
-        if <digit> == '0':
-          NO_BUG
+        if <function> == 'sqrt':
+          BUG
         else:
           NO_BUG
     else:
       NO_BUG
 
   New input specifications:
-    <digit> == '0' and <function> == 'sqrt' and <lead-digit> > 4.5
-    <digit> == '1' and <function> == 'sqrt' and <lead-digit> <= 4.5 and <term> <= -0.9899997711181641 and <value> <= 42.79999923706055
-    <function> == 'sqrt' and <lead-digit> <= 4.5 and <term> > -0.9899997711181641 and <value> <= 42.79999923706055
-    <digit> == '1' and <function> == 'sqrt' and <lead-digit> <= 4.5 and <term> > -0.9899997711181641 and <value> > 42.79999923706055
-    <digit> == '1' and <function> == 'sqrt' and <lead-digit> <= 4.5 and <term> > -0.9899997711181641 and <value> <= 42.79999923706055
-    <digit> == '1' and <function> == 'sqrt' and <lead-digit> > 4.5 and <term> <= -0.9899997711181641 and <value> <= 42.79999923706055
-    <function> == 'sqrt' and <lead-digit> > 4.5 and <term> <= -0.9899997711181641 and <value> > 42.79999923706055
-    <lead-digit> > 4.5
-    <function> == 'sqrt' and <lead-digit> > 4.5 and <term> <= -0.9899997711181641 and <value> <= 42.79999923706055
-    <digit> == '1' and <function> == 'sqrt' and <lead-digit> > 4.5 and <term> > -0.9899997711181641 and <value> <= 42.79999923706055
-    <digit> == '0' and <function> == 'sqrt' and <lead-digit> <= 4.5
-    <digit> == '1' and <function> == 'sqrt' and <lead-digit> > 4.5 and <term> > -0.9899997711181641 and <value> > 42.79999923706055
-    <function> == 'sqrt' and <lead-digit> <= 4.5 and <value> > 42.79999923706055
-    <digit> == '0' and <function> == 'sqrt' and <lead-digit> <= 4.5
-    <digit> == '1' and <function> == 'sqrt' and <lead-digit> <= 4.5 and <term> > -0.9899997711181641 and <value> <= 42.79999923706055
-    <digit> == '1' and <function> == 'sqrt' and <lead-digit> > 4.5 and <term> <= -0.9899997711181641 and <value> <= 42.79999923706055
-    <function> == 'sqrt' and <lead-digit> > 4.5 and <value> <= 42.79999923706055
-    <function> == 'sqrt' and <lead-digit> <= 4.5 and <value> <= 42.79999923706055
-    <function> == 'sqrt' and <lead-digit> > 4.5 and <value> > 42.79999923706055
-    <digit> == '1' and <function> == 'sqrt' and <lead-digit> <= 4.5 and <term> <= -0.9899997711181641 and <value> <= 42.79999923706055
-    <digit> == '0' and <function> == 'sqrt' and <lead-digit> > 4.5
-    <digit> == '1' and <function> == 'sqrt' and <lead-digit> <= 4.5 and <term> > -0.9899997711181641 and <value> > 42.79999923706055
-    <function> == 'sqrt' and <lead-digit> <= 4.5 and <term> <= -0.9899997711181641 and <value> > 42.79999923706055
-    <digit> == '1' and <function> == 'sqrt' and <lead-digit> > 4.5 and <term> > -0.9899997711181641 and <value> <= 42.79999923706055
-    <digit> == '1' and <function> == 'sqrt' and <lead-digit> > 4.5 and <term> > -0.9899997711181641 and <value> > 42.79999923706055
-    <lead-digit> <= 4.5
-    <function> == 'sqrt' and <lead-digit> <= 4.5 and <term> <= -0.9899997711181641 and <value> <= 42.79999923706055
+    <digit> == '8' and <term> <= -42.01650047302246
+    <term> > -15.650000095367432
+    <digit> == '8' and <term> <= -42.01650047302246
+    <term> <= -15.650000095367432
+    <digit> == '8' and <term> > -42.01650047302246
+    <digit> == '8' and <term> > -42.01650047302246
   New samples:
-    sin(50), sqrt(-2655.38086), cos(-23.0), sqrt(-2.85), cos(-10), sqrt(-3.3), sqrt(-3.96), sqrt(-9), sqrt(-3), sqrt(-7), cos(-13.5), sqrt(-7), sqrt(-5.6), tan(-19.562), sqrt(12.6), sqrt(8610.2), cos(28185), tan(44.951), sin(415.125665), sqrt(5132), sqrt(2.2), sqrt(4), cos(16.84), sqrt(250), cos(23), cos(35), cos(40), sqrt(0), sqrt(31), sqrt(7), sqrt(180), sqrt(23832.3), sqrt(7.09), sqrt(-1), sqrt(-919.0), sqrt(-596.2), tan(86.09), sqrt(-630), sqrt(-81), sqrt(-4), sqrt(-90), sqrt(-6), sqrt(-713.457), sqrt(-26.58), sqrt(-5), sqrt(-35.183421), sqrt(-63429923.1), sqrt(-77.28), sqrt(4.01920), sqrt(9.107), tan(-20390.1374), sqrt(657.3), sqrt(45.246), cos(338), sqrt(11), sqrt(-69), sqrt(-5.43), sqrt(-3.7), sqrt(9.5), sqrt(-6), sqrt(-30.40), sqrt(-2.6), sqrt(-62.0), sqrt(1), sqrt(1), sqrt(76583), sqrt(7.7361), sqrt(-6), sqrt(-10), sqrt(8.118), sqrt(-6.492), sqrt(-962), sqrt(-60), sqrt(-96), sqrt(-5), sqrt(57), sqrt(-3.3091), sqrt(2.499), sqrt(-3.0), sqrt(3.48), sqrt(20), sqrt(-81796.64227), sqrt(-1), sqrt(-9.1), sin(-11), cos(82), tan(262.66), sqrt(-475), sin(3507), sqrt(6266), sqrt(-160.737), sqrt(-40204.8), sqrt(-43), sin(449), tan(149.58), sqrt(-96797231.32), sqrt(479), cos(-102), sqrt(-78.59), sqrt(-876), cos(-229.14), sqrt(-96), sqrt(20107806.9), sqrt(-837739), sqrt(-21), cos(-4172.2), sqrt(2.2), sqrt(4), sqrt(0.5), sqrt(29.6), sqrt(28.4), sqrt(64), sqrt(2.2), sqrt(2.8), sqrt(7), sqrt(-0.6), sqrt(3.4), sqrt(7.3), sqrt(56), sqrt(795.3478), sqrt(90), sin(910), sin(526.00451), sqrt(-75.1130), sqrt(41), sqrt(-30.65)
+    sqrt(-74), cos(-4.0), tan(-12813.7), cos(-36614), cos(6.7832), tan(30.0)
 
 Iteration #9
   Decision Tree:
-    if <term> <= -13.5400:
-      if <term> <= -41.8000:
-        if <lead-digit> == '6':
+    if <term> <= -15.6500:
+      if <term> <= -42.0165:
+        if <function> == 'sqrt':
           NO_BUG
         else:
           NO_BUG
@@ -17381,24 +17354,27 @@
         if <function> == 'sqrt':
           BUG
         else:
-          NO_BUG
+          if <digit> == '5':
+            NO_BUG
+          else:
+            NO_BUG
     else:
       NO_BUG
 
   New input specifications:
-    <lead-digit> == '6' and <term> > -41.79999923706055
-    <term> <= -13.539999961853027
-    <lead-digit> == '6' and <term> > -41.79999923706055
-    <lead-digit> == '6' and <term> <= -41.79999923706055
-    <term> > -13.539999961853027
-    <lead-digit> == '6' and <term> <= -41.79999923706055
+    <term> > -15.650000095367432
+    <term> <= -15.650000095367432
+    <function> == 'sqrt' and <term> <= -42.01650047302246
+    <function> == 'sqrt' and <term> > -42.01650047302246
+    <function> == 'sqrt' and <term> > -42.01650047302246
+    <function> == 'sqrt' and <term> <= -42.01650047302246
   New samples:
-    cos(-9), sqrt(-931), cos(68), cos(-6664976.4), cos(2), sqrt(-15414)
+    sqrt(929.73), sin(-629.102), sqrt(-77), sin(0.16), sqrt(599), cos(-60166146.5)
 
 Iteration #10
   Decision Tree:
-    if <term> <= -13.5400:
-      if <term> <= -41.8000:
+    if <term> <= -15.6500:
+      if <term> <= -42.0165:
         NO_BUG
       else:
         if <function> == 'sqrt':
@@ -17406,333 +17382,387 @@
         else:
           NO_BUG
     else:
-      NO_BUG
+      if <digit> == '8':
+        NO_BUG
+      else:
+        NO_BUG
 
   New input specifications:
-    <term> <= -13.539999961853027
-    <term> > -41.79999923706055
-    <term> <= -41.79999923706055
-    <term> > -13.539999961853027
+    <digit> == '8' and <term> <= -15.650000095367432
+    <digit> == '8' and <term> > -15.650000095367432
+    <term> > -42.01650047302246
+    <term> <= -42.01650047302246
+    <digit> == '8' and <term> <= -15.650000095367432
+    <digit> == '8' and <term> > -15.650000095367432
   New samples:
-    tan(-131.3), cos(-9.1), sin(-73), tan(-2)
+    sqrt(-6853.5418911), sin(-8), cos(-5), sin(-91.10), tan(-537549), tan(3)
 
 Iteration #11
   Decision Tree:
-    if <term> <= -13.5400:
-      if <value> <= 41.8000:
+    if <term> <= -15.6500:
+      if <term> <= -42.0165:
         if <function> == 'sqrt':
-          BUG
+          NO_BUG
         else:
           NO_BUG
       else:
-        NO_BUG
+        if <function> == 'sqrt':
+          BUG
+        else:
+          NO_BUG
     else:
       NO_BUG
 
   New input specifications:
-    <term> > -13.539999961853027 and <value> > 41.79999923706055
-    <term> <= -13.539999961853027 and <value> > 41.79999923706055
-    <function> == 'sqrt' and <term> <= -13.539999961853027 and <value> > 41.79999923706055
-    <term> <= -13.539999961853027
-    <function> == 'sqrt' and <term> > -13.539999961853027 and <value> > 41.79999923706055
-    <function> == 'sqrt' and <term> > -13.539999961853027 and <value> > 41.79999923706055
-    <function> == 'sqrt' and <term> > -13.539999961853027 and <value> <= 41.79999923706055
-    <term> <= -13.539999961853027 and <value> <= 41.79999923706055
-    <function> == 'sqrt' and <term> <= -13.539999961853027 and <value> <= 41.79999923706055
-    <function> == 'sqrt' and <term> <= -13.539999961853027 and <value> > 41.79999923706055
-    <term> > -13.539999961853027
-    <function> == 'sqrt' and <term> <= -13.539999961853027 and <value> <= 41.79999923706055
-    <function> == 'sqrt' and <term> > -13.539999961853027 and <value> <= 41.79999923706055
+    <term> > -15.650000095367432
+    <term> <= -15.650000095367432
+    <function> == 'sqrt' and <term> <= -42.01650047302246
+    <function> == 'sqrt' and <term> > -42.01650047302246
+    <function> == 'sqrt' and <term> > -42.01650047302246
+    <function> == 'sqrt' and <term> <= -42.01650047302246
   New samples:
-    tan(966112), cos(-368131), sin(-9583344658), sin(-3505.3), cos(99.74006), sqrt(350), sqrt(7), tan(-32.8), tan(-39.1), sqrt(-85), sqrt(-0), sqrt(-85.3), sqrt(-9.62), cos(-37), sqrt(0), sqrt(7), sin(-24.2), sqrt(-3340), sqrt(-97), sqrt(-78), sqrt(9), sqrt(2.94), sqrt(-0), sqrt(-6.4), sqrt(7), sqrt(-62.0), sqrt(-89), sqrt(-7), sqrt(-47.93), sqrt(3), sqrt(-7.6), sin(-21.05), sqrt(-8239), sin(-32), sqrt(-7), sin(-6.5)
+    tan(5.234), tan(-98593), sqrt(-5640572), cos(95), sqrt(-8), tan(-994.79)
 
 Iteration #12
   Decision Tree:
-    if <lead-digit> <= 4.5000:
-      if <function> == 'sqrt':
-        if <integer> <= 42.0000:
-          if <term> <= -11.7900:
-            BUG
-          else:
-            if <lead-digit> <= 1.5000:
-              NO_BUG
-            else:
-              NO_BUG
+    if <term> <= -15.6500:
+      if <term> <= -42.0165:
+        if <term> <= -4337503456.0000:
+          NO_BUG
+        else:
+          NO_BUG
+      else:
+        if <function> == 'sqrt':
+          BUG
         else:
-          if <digit> == '8':
+          if <digit> == '5':
             NO_BUG
           else:
             NO_BUG
-      else:
-        if <digit> == '5':
-          NO_BUG
-        else:
-          NO_BUG
     else:
       NO_BUG
 
   New input specifications:
-    <digit> == '8' and <function> == 'sqrt' and <integer> <= 42.0 and <lead-digit> > 4.5
-    <digit> == '5' and <function> == 'sqrt' and <lead-digit> <= 4.5
-    <function> == 'sqrt' and <integer> <= 42.0 and <lead-digit> > 4.5 and <term> <= -11.789999961853027
-    <digit> == '8' and <function> == 'sqrt' and <integer> <= 42.0 and <lead-digit> <= 4.5
-    <digit> == '8' and <function> == 'sqrt' and <integer> <= 42.0 and <lead-digit> <= 4.5
-    <lead-digit> > 4.5
-    <function> == 'sqrt' and <integer> > 42.0 and <lead-digit> <= 1.5 and <term> > -11.789999961853027
-    <function> == 'sqrt' and <integer> > 42.0 and <lead-digit> > 4.5 and <term> <= -11.789999961853027
-    <function> == 'sqrt' and <integer> <= 42.0 and <lead-digit> <= 1.5 and <term> > -11.789999961853027
-    <digit> == '8' and <function> == 'sqrt' and <integer> > 42.0 and <lead-digit> > 4.5
-    <digit> == '5' and <function> == 'sqrt' and <lead-digit> > 4.5
-    <digit> == '8' and <function> == 'sqrt' and <integer> > 42.0 and <lead-digit> > 4.5
-    <digit> == '5' and <function> == 'sqrt' and <lead-digit> <= 4.5
-    <digit> == '8' and <function> == 'sqrt' and <integer> > 42.0 and <lead-digit> <= 4.5
-    <digit> == '8' and <function> == 'sqrt' and <integer> <= 42.0 and <lead-digit> > 4.5
-    <function> == 'sqrt' and <integer> > 42.0 and <lead-digit> > 1.5 and <term> > -11.789999961853027
-    <function> == 'sqrt' and <integer> <= 42.0 and <lead-digit> <= 4.5 and <term> <= -11.789999961853027
-    <function> == 'sqrt' and <integer> > 42.0 and <lead-digit> <= 4.5 and <term> <= -11.789999961853027
-    <function> == 'sqrt' and <integer> <= 42.0 and <lead-digit> <= 1.5 and <term> <= -11.789999961853027
-    <function> == 'sqrt' and <integer> <= 42.0 and <lead-digit> > 1.5 and <term> > -11.789999961853027
-    <function> == 'sqrt' and <integer> <= 42.0 and <lead-digit> <= 4.5 and <term> > -11.789999961853027
-    <digit> == '5' and <function> == 'sqrt' and <lead-digit> > 4.5
-    <digit> == '8' and <function> == 'sqrt' and <integer> > 42.0 and <lead-digit> <= 4.5
-    <lead-digit> <= 4.5
+    <term> <= -4337503456.0
+    <term> > -15.650000095367432
+    <term> <= -15.650000095367432
+    <term> > -4337503456.0
   New samples:
-    sqrt(-7518.99), sqrt(6.886), sqrt(-1.158), sqrt(-518), tan(1731.6), sqrt(-52), sqrt(-9357.495957044), sqrt(-65728.80), sqrt(-54.4), sqrt(-8958.3), sqrt(-46528), sqrt(-1521.048), sqrt(-22.6), sqrt(32.69), tan(-7883), sqrt(67.19), sqrt(72.6), sqrt(86262), sqrt(12.30), sqrt(744.23), sqrt(48), sqrt(4054), sqrt(7965.0965), cos(105.202), sqrt(409), sqrt(-52), sqrt(7), sqrt(4.406), sqrt(-19), tan(16.589), sqrt(-8.3118), tan(13.0), sqrt(5.2), sqrt(8), sqrt(-8.4), sqrt(-4), sqrt(2), sqrt(-13), sqrt(9.6725466), sqrt(-2), cos(-11), sqrt(-4.2), sin(-10.50), sqrt(7), sqrt(14901.9771971), sqrt(24.08), sqrt(-0), sqrt(4), sqrt(-8.9), sqrt(-588), sin(87.151), sqrt(83), sin(37982.155), sqrt(334), sqrt(74), sqrt(620.9), sqrt(-23.3), sqrt(3), sqrt(91.5), sqrt(3.9), sqrt(91), sqrt(-15.92), sqrt(-9), sqrt(-54.03), sqrt(-6.62522), sqrt(0), sqrt(-0.5109), sqrt(-2), sqrt(-9231.1301), sqrt(-5.47), sqrt(53.9), sqrt(-5.6), sqrt(9705), sqrt(583), sqrt(-36.4), sqrt(-21519), sqrt(-4.02), sqrt(5.731376792), sin(-25), sin(10.6), sin(15), sqrt(-2096165.4), sqrt(1.0), sqrt(8), tan(-17940.0), sin(-182.9), sqrt(-1.954), sqrt(145.60), sqrt(-1.61), sqrt(-2.5), sqrt(3.004), sqrt(-68), sqrt(4), sqrt(-207832.811), sqrt(2), sqrt(-4), tan(-183), sqrt(7), sqrt(-9), tan(-38), sqrt(5), sqrt(8.7), sin(39), sqrt(6), sqrt(9.4), sqrt(-7), sqrt(-6.7), sqrt(765), sqrt(72), sqrt(509481442), sqrt(-4), sqrt(52.403), sqrt(287.36), sqrt(3.2), sqrt(-2.0), sqrt(8), tan(41), cos(21), sqrt(16.82), sin(-84), sqrt(98.94), sqrt(1363534.202), cos(193.3586960), sqrt(24.84), tan(284), sqrt(225466), sqrt(-58.4), sin(-111.636155)
+    sin(8.14), tan(-39.1), sqrt(-57.35), tan(-2), tan(-43.8), tan(-1), sqrt(-910), cos(5), sqrt(1), sqrt(-69), cos(-0), sqrt(-1.7), cos(37), sqrt(-17), cos(89253237), sqrt(6.346), sin(-10), tan(-97.1), sin(-2), sin(-4.1), cos(-73535.8), sqrt(-5), tan(-4299), sin(-0.3), tan(-4), cos(-578), tan(-34.8), tan(2584.07), cos(-4.1), sqrt(380), tan(3.3), sin(5), sin(-4.43), sqrt(94.76), sin(86912), sqrt(1), cos(0.6), sqrt(-4.7), cos(-1), cos(18.15), cos(-84.59), cos(83.6778), sqrt(839), sqrt(152.4), tan(-8), sqrt(2.7), cos(7931.22), sqrt(653.7943), tan(-3.5), sqrt(367574), tan(-42), sqrt(-21.881), sin(-65704), sqrt(-0), cos(854.6), sin(43), tan(6145.0), tan(-6201), cos(12756), sqrt(137), tan(2940.0), cos(-8), cos(73.946976), sqrt(3), sin(-3), cos(972247.7), cos(7), tan(73.96), tan(-0), sin(-1.403), sin(-21.6), sin(27.2), sqrt(49.4), tan(-171), sqrt(-31.146), tan(-4), sin(-227), sin(98.3), cos(-9), sin(-3), cos(-74), cos(-38.88), sqrt(-85), sqrt(-8), tan(-30), sin(-6171), sin(-6), tan(-0.44060), tan(-766.7), tan(42.3), tan(-5460.24), sin(4.6), tan(0.5), sqrt(6.3088371), cos(250271), tan(-30.3), sqrt(-0.6316622), sin(5.7899), sqrt(0), cos(-5), tan(-6), sin(-24.2), sqrt(-36164)
 
 Iteration #13
   Decision Tree:
-    if <term> <= -12.5000:
-      if <term> <= -41.8000:
-        NO_BUG
-      else:
+    if <term> <= -15.6500:
+      if <value> <= 41.5165:
         if <function> == 'sqrt':
           BUG
         else:
-          if <digit> == '9':
+          if <lead-digit> == '3':
             NO_BUG
           else:
             NO_BUG
+      else:
+        if <lead-digit> == '5':
+          NO_BUG
+        else:
+          NO_BUG
     else:
-      NO_BUG
+      if <digit>:
+        NO_BUG
+      else:
+        NO_BUG
 
   New input specifications:
-    <term> <= -12.5
-    <term> > -12.5
-    <term> > -41.79999923706055
-    <term> <= -41.79999923706055
+    <function> == 'sqrt' and <lead-digit> == '3' and <term> > -15.650000095367432 and <value> <= 41.51650047302246
+    <function> == 'sqrt' and <term> <= -15.650000095367432 and <value> <= 41.51650047302246
+    <function> == 'sqrt' and <lead-digit> == '3' and <term> <= -15.650000095367432 and <value> > 41.51650047302246
+    <function> == 'sqrt' and <lead-digit> == '3' and <term> > -15.650000095367432 and <value> > 41.51650047302246
+    <lead-digit> == '5' and <term> > -15.650000095367432 and <value> <= 41.51650047302246
+    <function> == 'sqrt' and <lead-digit> == '3' and <term> > -15.650000095367432 and <value> <= 41.51650047302246
+    <digit> > 0.5 and <term> <= -15.650000095367432
+    <digit> <= 0.5 and <term> > -15.650000095367432
+    <lead-digit> == '5' and <term> <= -15.650000095367432 and <value> > 41.51650047302246
+    <function> == 'sqrt' and <lead-digit> == '3' and <term> <= -15.650000095367432 and <value> > 41.51650047302246
+    <lead-digit> == '5' and <term> > -15.650000095367432 and <value> > 41.51650047302246
+    <lead-digit> == '5' and <term> > -15.650000095367432 and <value> <= 41.51650047302246
+    <lead-digit> == '5' and <term> <= -15.650000095367432 and <value> > 41.51650047302246
+    <lead-digit> == '5' and <term> <= -15.650000095367432 and <value> <= 41.51650047302246
+    <digit> > 0.5 and <term> > -15.650000095367432
+    <function> == 'sqrt' and <term> > -15.650000095367432 and <value> <= 41.51650047302246
+    <digit> <= 0.5 and <term> <= -15.650000095367432
+    <function> == 'sqrt' and <lead-digit> == '3' and <term> > -15.650000095367432 and <value> > 41.51650047302246
+    <function> == 'sqrt' and <term> > -15.650000095367432 and <value> > 41.51650047302246
+    <function> == 'sqrt' and <term> <= -15.650000095367432 and <value> > 41.51650047302246
+    <lead-digit> == '5' and <term> <= -15.650000095367432 and <value> <= 41.51650047302246
+    <function> == 'sqrt' and <lead-digit> == '3' and <term> <= -15.650000095367432 and <value> <= 41.51650047302246
+    <function> == 'sqrt' and <lead-digit> == '3' and <term> <= -15.650000095367432 and <value> <= 41.51650047302246
+    <lead-digit> == '5' and <term> > -15.650000095367432 and <value> > 41.51650047302246
   New samples:
-    sin(-91), cos(-4.602271), sin(16), cos(-70.51)
+    tan(4.1), sqrt(-23.556), cos(-381226), cos(56412), sqrt(-1.061), sin(12), sin(54), cos(1), tan(-7.5), sin(-1.83), tan(-5), sin(-8), sqrt(-9), cos(6.94524), sqrt(-4.9), sqrt(-2.3), tan(-3.593250), cos(-5), tan(7), tan(37), sqrt(11), sqrt(1.0), sqrt(0.3), tan(0), sin(-0.870), sqrt(9.9), sqrt(6.4), tan(-6.5421), sqrt(-5), sin(8), sin(-8), sqrt(-2), sin(4.72), cos(-4), tan(-5.8), sqrt(8), sqrt(7.9), sqrt(-2), tan(-6), sin(-5), tan(1), cos(-3), sin(-4.76), sqrt(-3), sqrt(32.69), sin(-6), tan(7), tan(7.4), cos(5), sqrt(5), cos(5), sin(-0.2), sqrt(-8.71), tan(5.663), sqrt(4.61879), sin(-5.8), sqrt(4.7), tan(-9.3), tan(-6.0647), sqrt(-8.4), cos(-0.5), sin(522), sqrt(-3), sin(1.908), tan(1.6), sqrt(54), sin(30.6574), cos(-72239.8), tan(0), tan(-44), cos(-125743), sqrt(64.578), cos(2), sin(-57.2), cos(-19), sqrt(67), sqrt(-5.47), cos(-57), cos(-76.94), cos(-56.7428), sqrt(-75), sqrt(-73), cos(-3898.8), tan(-69606), sqrt(-222), tan(-70.676396), sin(-77), cos(-36), cos(-43.62), sin(-526.6), tan(-840.0), sin(-57), sin(-91.7), tan(-660), tan(-412), sqrt(-58), tan(369), sqrt(783.765), sqrt(-258450.2), cos(-26), sin(-5425.227947), sin(-35.3), tan(-500.1), sin(-17.71), sin(-38.1), sqrt(51.9)
 
 Iteration #14
   Decision Tree:
-    if <term> <= -12.5000:
-      if <term> <= -41.8000:
-        if <lead-digit> == '6':
-          NO_BUG
-        else:
-          NO_BUG
-      else:
+    if <term> <= -15.6500:
+      if <integer> <= 41.5000:
         if <function> == 'sqrt':
           BUG
         else:
-          if <function> == 'sin':
+          if <lead-digit> == '2':
             NO_BUG
           else:
             NO_BUG
+      else:
+        NO_BUG
     else:
       NO_BUG
 
   New input specifications:
-    <lead-digit> == '6' and <term> > -41.79999923706055
-    <term> <= -12.5
-    <term> > -12.5
-    <lead-digit> == '6' and <term> > -41.79999923706055
-    <lead-digit> == '6' and <term> <= -41.79999923706055
-    <lead-digit> == '6' and <term> <= -41.79999923706055
+    <function> == 'sqrt' and <integer> <= 41.5 and <term> > -15.650000095367432
+    <function> == 'sqrt' and <lead-digit> == '2' and <integer> > 41.5 and <term> > -15.650000095367432
+    <function> == 'sqrt' and <lead-digit> == '2' and <integer> > 41.5 and <term> > -15.650000095367432
+    <term> > -15.650000095367432
+    <integer> > 41.5 and <term> <= -15.650000095367432
+    <function> == 'sqrt' and <lead-digit> == '2' and <integer> <= 41.5 and <term> <= -15.650000095367432
+    <term> <= -15.650000095367432
+    <function> == 'sqrt' and <lead-digit> == '2' and <integer> <= 41.5 and <term> > -15.650000095367432
+    <function> == 'sqrt' and <lead-digit> == '2' and <integer> > 41.5 and <term> <= -15.650000095367432
+    <integer> <= 41.5 and <term> <= -15.650000095367432
+    <function> == 'sqrt' and <lead-digit> == '2' and <integer> <= 41.5 and <term> > -15.650000095367432
+    <function> == 'sqrt' and <integer> <= 41.5 and <term> <= -15.650000095367432
+    <function> == 'sqrt' and <integer> > 41.5 and <term> > -15.650000095367432
+    <function> == 'sqrt' and <lead-digit> == '2' and <integer> <= 41.5 and <term> <= -15.650000095367432
+    <function> == 'sqrt' and <lead-digit> == '2' and <integer> > 41.5 and <term> <= -15.650000095367432
+    <integer> > 41.5 and <term> > -15.650000095367432
+    <function> == 'sqrt' and <integer> > 41.5 and <term> <= -15.650000095367432
   New samples:
-    sin(2.34), cos(-76), cos(-3.0948), sqrt(680.890597), cos(-62.2), sin(-846.5)
+    sqrt(5), tan(150.877), sin(77), sin(916), sin(44.5), tan(92.0), tan(138.8), tan(-269.167), sin(82), tan(126), cos(43.55), tan(779), cos(5928.6), sin(88), cos(85.0), sin(-3.7261), cos(-504679), tan(-18.8), sin(-8203), cos(0), cos(-86.3), cos(-41), cos(22), sqrt(-26), sqrt(321.5290), tan(-26.9), tan(-285.9), cos(115), sqrt(-895)
 
 Iteration #15
   Decision Tree:
-    if <term> <= -12.5000:
-      if <term> <= -41.8000:
-        if <lead-digit> == '6':
-          NO_BUG
+    if <term> <= -15.6500:
+      if <integer> <= 41.5000:
+        if <function> == 'sqrt':
+          if <digit> == '1':
+            BUG
+          else:
+            BUG
         else:
           NO_BUG
       else:
-        if <function> == 'sqrt':
-          BUG
+        if <digit> == '1':
+          NO_BUG
         else:
-          if <function> == 'sin':
-            NO_BUG
-          else:
-            NO_BUG
+          NO_BUG
     else:
-      NO_BUG
+      if <lead-digit> == '3':
+        NO_BUG
+      else:
+        NO_BUG
 
   New input specifications:
-    <lead-digit> == '6' and <term> > -41.79999923706055
-    <term> <= -12.5
-    <term> > -12.5
-    <lead-digit> == '6' and <term> > -41.79999923706055
-    <lead-digit> == '6' and <term> <= -41.79999923706055
-    <lead-digit> == '6' and <term> <= -41.79999923706055
+    <digit> == '1' and <integer> > 41.5 and <term> <= -15.650000095367432
+    <digit> == '1' and <integer> <= 41.5 and <term> > -15.650000095367432
+    <function> == 'sqrt' and <integer> > 41.5 and <term> <= -15.650000095367432
+    <digit> == '1' and <function> == 'sqrt' and <integer> > 41.5 and <term> <= -15.650000095367432
+    <digit> == '1' and <integer> <= 41.5 and <term> <= -15.650000095367432
+    <lead-digit> == '3' and <term> > -15.650000095367432
+    <digit> == '1' and <function> == 'sqrt' and <integer> <= 41.5 and <term> <= -15.650000095367432
+    <digit> == '1' and <integer> > 41.5 and <term> > -15.650000095367432
+    <digit> == '1' and <integer> <= 41.5 and <term> <= -15.650000095367432
+    <lead-digit> == '3' and <term> <= -15.650000095367432
+    <lead-digit> == '3' and <term> > -15.650000095367432
+    <digit> == '1' and <integer> > 41.5 and <term> <= -15.650000095367432
+    <digit> == '1' and <function> == 'sqrt' and <integer> > 41.5 and <term> > -15.650000095367432
+    <digit> == '1' and <integer> <= 41.5 and <term> > -15.650000095367432
+    <digit> == '1' and <function> == 'sqrt' and <integer> > 41.5 and <term> <= -15.650000095367432
+    <function> == 'sqrt' and <integer> > 41.5 and <term> > -15.650000095367432
+    <digit> == '1' and <function> == 'sqrt' and <integer> <= 41.5 and <term> > -15.650000095367432
+    <digit> == '1' and <function> == 'sqrt' and <integer> <= 41.5 and <term> > -15.650000095367432
+    <lead-digit> == '3' and <term> <= -15.650000095367432
+    <digit> == '1' and <integer> > 41.5 and <term> > -15.650000095367432
+    <digit> == '1' and <function> == 'sqrt' and <integer> <= 41.5 and <term> <= -15.650000095367432
+    <function> == 'sqrt' and <integer> <= 41.5 and <term> > -15.650000095367432
+    <digit> == '1' and <function> == 'sqrt' and <integer> > 41.5 and <term> > -15.650000095367432
+    <function> == 'sqrt' and <integer> <= 41.5 and <term> <= -15.650000095367432
   New samples:
-    cos(-9), tan(-29.304), tan(-3), cos(68), sin(-6005920.2), tan(-171.5)
+    cos(-372), sqrt(9.707), sin(-8418.9), sqrt(-42.5), sin(1.7), tan(-7.41), sqrt(1.10), sin(-6.2193), sqrt(5.1), sqrt(-1.073), sqrt(-23.68), cos(-34.284), tan(1.66), cos(-991.2173), cos(2.164), sin(-17.73), sin(-4570425.11), sin(-80160.46), tan(-14.12), sqrt(-8.61), cos(1), sqrt(-1), cos(-94.814), sin(-6.3), sqrt(-1), sqrt(5.801), sqrt(-841907.14), sqrt(-1.80), sqrt(-52.1), cos(5629.7), cos(-40.3), cos(-75), sin(30.63), cos(-61), sqrt(995.6), tan(-5.127), sqrt(9630.918), sqrt(-534), tan(-59.18187), sqrt(-99), sin(-97.01), sin(-34132), tan(-5714.9), sin(6809), sqrt(-15), sqrt(1.86), sqrt(-38.79), cos(35891), sqrt(-22), tan(7.675), sqrt(74715), cos(-26.77)
 
 Iteration #16
   Decision Tree:
-    if <term> <= -12.5000:
-      if <term> <= -41.8000:
-        if <digit> == '4':
+    if <lead-digit> <= 4.5000:
+      if <function> == 'sqrt':
+        if <term> == '<value>':
           NO_BUG
         else:
-          NO_BUG
-      else:
-        if <function> == 'sqrt':
-          BUG
-        else:
-          if <digit> == '5':
+          if <term> <= -41.7665:
             NO_BUG
           else:
-            NO_BUG
+            BUG
+      else:
+        NO_BUG
     else:
       NO_BUG
 
   New input specifications:
-    <digit> == '4' and <term> > -41.79999923706055
-    <term> <= -12.5
-    <term> > -12.5
-    <digit> == '4' and <term> > -41.79999923706055
-    <digit> == '4' and <term> <= -41.79999923706055
-    <digit> == '4' and <term> <= -41.79999923706055
+    <function> == 'sqrt' and <term> == '<value>' and <lead-digit> <= 4.5
+    <function> == 'sqrt' and <term> == '<value>' and <lead-digit> > 4.5
+    <function> == 'sqrt' and <term> == '<value>' and <lead-digit> <= 4.5 and <term> > -41.76650047302246
+    <function> == 'sqrt' and <term> == '<value>' and <lead-digit> > 4.5 and <term> > -41.76650047302246
+    <function> == 'sqrt' and <term> == '<value>' and <lead-digit> <= 4.5 and <term> > -41.76650047302246
+    <function> == 'sqrt' and <lead-digit> <= 4.5
+    <function> == 'sqrt' and <term> == '<value>' and <lead-digit> > 4.5 and <term> <= -41.76650047302246
+    <function> == 'sqrt' and <lead-digit> > 4.5
+    <function> == 'sqrt' and <term> == '<value>' and <lead-digit> <= 4.5 and <term> <= -41.76650047302246
+    <function> == 'sqrt' and <term> == '<value>' and <lead-digit> <= 4.5 and <term> <= -41.76650047302246
+    <function> == 'sqrt' and <term> == '<value>' and <lead-digit> <= 4.5
+    <lead-digit> > 4.5
+    <function> == 'sqrt' and <lead-digit> <= 4.5
+    <function> == 'sqrt' and <term> == '<value>' and <lead-digit> > 4.5
+    <lead-digit> <= 4.5
   New samples:
-    sin(95.82), sin(-14), sin(3079.140644), tan(5.241), tan(-8948), sin(-928)
+    sqrt(35.989), sqrt(-950.1), sqrt(-27.8), sqrt(694.91), sqrt(-5.2), sqrt(-0), sqrt(-3.08), sqrt(785), sqrt(-8), sqrt(925.21469), sqrt(-4), sqrt(-23.3), sqrt(-0), sqrt(-4), sqrt(67), sqrt(411.4), tan(-40), sqrt(-907.5), cos(846), sqrt(-45), sqrt(1062), sqrt(33766.9), sqrt(-386.88), sqrt(-272.1), cos(6327.5), sqrt(126.88), sqrt(8698), cos(-15.4681)
 
 Iteration #17
   Decision Tree:
-    if <term> <= -12.5000:
-      if <term> <= -41.8000:
-        NO_BUG
-      else:
-        if <function> == 'sqrt':
-          BUG
-        else:
-          if <lead-digit> == '3':
+    if <lead-digit> <= 4.5000:
+      if <function> == 'sqrt':
+        if <term> <= -11.1500:
+          if <term> <= -41.7665:
             NO_BUG
           else:
-            NO_BUG
+            BUG
+        else:
+          NO_BUG
+      else:
+        NO_BUG
     else:
       NO_BUG
 
   New input specifications:
-    <term> <= -12.5
-    <term> > -41.79999923706055
-    <term> <= -41.79999923706055
-    <term> > -12.5
+    <function> == 'sqrt' and <lead-digit> > 4.5 and <term> > -41.76650047302246
+    <function> == 'sqrt' and <lead-digit> <= 4.5
+    <function> == 'sqrt' and <lead-digit> <= 4.5 and <term> <= -41.76650047302246
+    <function> == 'sqrt' and <lead-digit> > 4.5 and <term> <= -11.150000095367432
+    <function> == 'sqrt' and <lead-digit> <= 4.5 and <term> <= -11.150000095367432
+    <function> == 'sqrt' and <lead-digit> <= 4.5 and <term> > -41.76650047302246
+    <function> == 'sqrt' and <lead-digit> > 4.5
+    <function> == 'sqrt' and <lead-digit> <= 4.5 and <term> > -11.150000095367432
+    <lead-digit> > 4.5
+    <function> == 'sqrt' and <lead-digit> > 4.5 and <term> <= -41.76650047302246
+    <function> == 'sqrt' and <lead-digit> > 4.5 and <term> > -11.150000095367432
+    <function> == 'sqrt' and <lead-digit> <= 4.5
+    <lead-digit> <= 4.5
   New samples:
-    tan(-74), cos(40.44748), tan(-56.5568), sqrt(-1.9)
+    sqrt(70812), sin(115.655615855), sqrt(-86), sqrt(-25), tan(-45), tan(-167), tan(-100), sqrt(-60), sqrt(32227.792), tan(-43), sqrt(-68), sqrt(-7405), sqrt(-98508), sqrt(-26), sqrt(31), sqrt(-95), sqrt(-44.3), sqrt(300306.2), tan(87), sqrt(105.1), tan(63), sqrt(-86.80), sqrt(879.8), sqrt(33.042), cos(-37)
 
 Iteration #18
   Decision Tree:
     if <lead-digit> <= 4.5000:
       if <function> == 'sqrt':
-        if <integer> <= 42.0000:
-          if <term> <= -11.5000:
-            BUG
-          else:
-            NO_BUG
+        if <term> == '<value>':
+          NO_BUG
         else:
-          if <lead-digit> == '3':
+          if <term> <= -41.7665:
             NO_BUG
           else:
-            NO_BUG
-      else:
-        if <term> == '-<value>':
-          NO_BUG
-        else:
-          NO_BUG
-    else:
-      if <digit>:
-        NO_BUG
+            BUG
       else:
         NO_BUG
+    else:
+      NO_BUG
 
   New input specifications:
-    <digit> > 0.5 and <lead-digit> <= 4.5
-    <digit> <= 0.5 and <lead-digit> <= 4.5
-    <function> == 'sqrt' and <integer> <= 42.0 and <lead-digit> > 4.5 and <term> > -11.5
-    <function> == 'sqrt' and <term> == '-<value>' and <lead-digit> <= 4.5
-    <function> == 'sqrt' and <lead-digit> == '3' and <integer> > 42.0 and <lead-digit> > 4.5
-    <function> == 'sqrt' and <lead-digit> == '3' and <integer> > 42.0 and <lead-digit> <= 4.5
-    <function> == 'sqrt' and <term> == '-<value>' and <lead-digit> <= 4.5
-    <function> == 'sqrt' and <term> == '-<value>' and <lead-digit> > 4.5
-    <function> == 'sqrt' and <lead-digit> == '3' and <integer> > 42.0 and <lead-digit> <= 4.5
-    <function> == 'sqrt' and <lead-digit> == '3' and <integer> <= 42.0 and <lead-digit> > 4.5
-    <digit> > 0.5 and <lead-digit> > 4.5
-    <function> == 'sqrt' and <integer> > 42.0 and <lead-digit> <= 4.5 and <term> <= -11.5
-    <function> == 'sqrt' and <integer> <= 42.0 and <lead-digit> <= 4.5 and <term> <= -11.5
-    <function> == 'sqrt' and <lead-digit> == '3' and <integer> <= 42.0 and <lead-digit> > 4.5
-    <function> == 'sqrt' and <integer> > 42.0 and <lead-digit> > 4.5 and <term> > -11.5
-    <digit> <= 0.5 and <lead-digit> > 4.5
-    <function> == 'sqrt' and <integer> > 42.0 and <lead-digit> > 4.5 and <term> <= -11.5
-    <function> == 'sqrt' and <lead-digit> == '3' and <integer> <= 42.0 and <lead-digit> <= 4.5
-    <function> == 'sqrt' and <lead-digit> == '3' and <integer> > 42.0 and <lead-digit> > 4.5
-    <function> == 'sqrt' and <integer> <= 42.0 and <lead-digit> <= 4.5 and <term> > -11.5
-    <function> == 'sqrt' and <integer> > 42.0 and <lead-digit> <= 4.5 and <term> > -11.5
-    <function> == 'sqrt' and <term> == '-<value>' and <lead-digit> > 4.5
-    <function> == 'sqrt' and <lead-digit> == '3' and <integer> <= 42.0 and <lead-digit> <= 4.5
-    <function> == 'sqrt' and <integer> <= 42.0 and <lead-digit> > 4.5 and <term> <= -11.5
+    <function> == 'sqrt' and <term> == '<value>' and <lead-digit> <= 4.5
+    <function> == 'sqrt' and <term> == '<value>' and <lead-digit> > 4.5
+    <function> == 'sqrt' and <term> == '<value>' and <lead-digit> <= 4.5 and <term> > -41.76650047302246
+    <function> == 'sqrt' and <term> == '<value>' and <lead-digit> > 4.5 and <term> > -41.76650047302246
+    <function> == 'sqrt' and <term> == '<value>' and <lead-digit> <= 4.5 and <term> > -41.76650047302246
+    <function> == 'sqrt' and <lead-digit> <= 4.5
+    <function> == 'sqrt' and <term> == '<value>' and <lead-digit> > 4.5 and <term> <= -41.76650047302246
+    <function> == 'sqrt' and <lead-digit> > 4.5
+    <function> == 'sqrt' and <term> == '<value>' and <lead-digit> <= 4.5 and <term> <= -41.76650047302246
+    <function> == 'sqrt' and <term> == '<value>' and <lead-digit> <= 4.5 and <term> <= -41.76650047302246
+    <function> == 'sqrt' and <term> == '<value>' and <lead-digit> <= 4.5
+    <lead-digit> > 4.5
+    <function> == 'sqrt' and <lead-digit> <= 4.5
+    <function> == 'sqrt' and <term> == '<value>' and <lead-digit> > 4.5
+    <lead-digit> <= 4.5
   New samples:
-    sin(217.7), sin(-25), tan(4461), sin(-0), sin(30.63), sqrt(125616), cos(4681.7), cos(38), cos(212.8), tan(17258612.6), cos(3090), sqrt(286), tan(-17), sin(-48.81), sqrt(-23), sqrt(-26), tan(35), tan(-0), sqrt(-19.8), tan(34), tan(0.0), sin(-340), cos(-27.1), tan(316), sqrt(-3), sqrt(26), sqrt(833852.9), sqrt(8.45), sqrt(88.68), sqrt(72), sqrt(17), sqrt(-7), sqrt(-4.04), sqrt(15), sqrt(6.854343), sqrt(4.46), sqrt(1.7), sqrt(-7), sqrt(8.8), sqrt(5.4), sqrt(-1.80), sqrt(-0.4), sqrt(5.0), sqrt(2.1), sqrt(31.64), cos(21.27), sqrt(-96.26), sqrt(91.13), sqrt(-8252977), sqrt(9630.918), sqrt(90), sqrt(92047.6232), sqrt(-534), cos(372), tan(3926.6), sqrt(30.94), sin(-37), sin(-77.16), sqrt(44283653.785), sqrt(-5823383.6), sqrt(28), sqrt(-2.0), sqrt(0.432), sqrt(9), sqrt(-8), sqrt(-29), sqrt(6), sqrt(2), sqrt(-6), sqrt(-957), sqrt(-9), sqrt(-9.92), sqrt(-65.681), sqrt(77.5446), sqrt(-7), sqrt(80.40), sqrt(-2.824), sqrt(9822), sqrt(-8.5), sqrt(-80.6), tan(554.25), cos(-1060), sin(-45.89), cos(-441), sqrt(29519.7), sin(-212.069), sin(-238.31), sqrt(-701), sqrt(-76198), sqrt(-842), cos(-439), sqrt(-22), tan(-117354), sqrt(-946), sin(-361.57), sqrt(-71.4626), sqrt(-6947), sqrt(-21892063), sin(-30.5), sin(-19.93), tan(-17), tan(-32), sin(-41.1375), cos(-25), sqrt(21), sqrt(-2224), sqrt(-42), sqrt(-357), sqrt(-1.2), sqrt(-9), sqrt(-5), sqrt(-6757.4), sqrt(5), sqrt(0.8), sqrt(9.7), sqrt(8.9868), sqrt(94102.52), sqrt(10.394), sqrt(316.26580), sqrt(1), sqrt(-2.95), sqrt(11.09), sin(35), sqrt(-9.89), sqrt(-6.202), sqrt(91.91), sqrt(51), sqrt(-9), sqrt(-16), sqrt(-0.0), sqrt(28.4), sqrt(-657.98), sqrt(-8.9), sqrt(-915), sqrt(66.9996), tan(-55.7), sqrt(52), sqrt(64), sqrt(606.70), tan(-8830.552), tan(94.40), cos(650), sin(67.1), sin(-6383), cos(-0), sin(-99745.9), sqrt(872043.7), sqrt(96), sin(-61.7), sin(-61.9), tan(-64), sqrt(564.28474), cos(-55.345), sqrt(67), sqrt(62), cos(-86.5), sin(57.135), cos(-947.93), sqrt(-55.2), sqrt(317.17), sqrt(17.8), tan(-35), sqrt(-23.3), sqrt(-9283071), sqrt(18), sqrt(31395.08), sin(676), sqrt(-23.3), sqrt(-8104), sqrt(-9904.13), sqrt(-15), sqrt(-14.17)
+    sqrt(38), sqrt(-80.2), sqrt(-12), sqrt(9534), sqrt(-54.776), sqrt(690), sqrt(-74.4), sqrt(-75), sqrt(-1), sqrt(7518401677), sqrt(-0), sqrt(-4), sqrt(87.02), sqrt(-2), sqrt(-82284597690.6), sqrt(-5), sqrt(21.95), tan(-463), sqrt(-783), cos(79), sqrt(-4677), sqrt(284), sqrt(-151), sqrt(11), sqrt(-27366), sqrt(-407), sqrt(-338.2028), sqrt(98.1), sqrt(15.40), sqrt(63), tan(16)
 
 Iteration #19
   Decision Tree:
-    if <term> <= -12.5000:
-      if <term> <= -42.5000:
-        if <digit> == '9':
-          NO_BUG
+    if <lead-digit> <= 3.5000:
+      if <function> == 'sqrt':
+        if <term> == '-<value>':
+          if <term> <= -94.8950:
+            NO_BUG
+          else:
+            if <integer> <= 13.5000:
+              BUG
+            else:
+              BUG
         else:
           NO_BUG
       else:
-        if <function> == 'sqrt':
-          BUG
+        if <term> <= -1530829.2500:
+          NO_BUG
         else:
-          if <value> == '<integer>':
-            NO_BUG
-          else:
-            NO_BUG
+          NO_BUG
     else:
-      if exists(<lead-digit>):
-        NO_BUG
+      if <lead-digit> <= 4.5000:
+        if <integer> <= 41.5000:
+          if <value> <= 41.0165:
+            if <digits>:
+              NO_BUG
+            else:
+              NO_BUG
+          else:
+            BUG
+        else:
+          NO_BUG
       else:
-        NO_BUG
+        if <digit> == '7':
+          NO_BUG
+        else:
+          NO_BUG
 
   New input specifications:
-    <digit> == '9' and <term> <= -42.5
-    exists(<lead-digit>) and <term> <= -12.5
-    <digit> == '9' and <term> > -42.5
-    exists(<lead-digit>) and <term> > -12.5
-    exists(<lead-digit>) and <term> <= -12.5
-    <digit> == '9' and <term> > -42.5
-    <digit> == '9' and <term> <= -42.5
-    exists(<lead-digit>) and <term> > -12.5
+    <function> == 'sqrt' and <lead-digit> <= 3.5 and <term> <= -1530829.25
+    <digit> == '7' and <lead-digit> > 4.5
+    <function> == 'sqrt' and <term> == '-<value>' and <lead-digit> > 3.5
+    <digit> == '7' and <lead-digit> <= 4.5
+    <function> == 'sqrt' and <lead-digit> > 3.5 and <term> <= -1530829.25
+    <function> == 'sqrt' and <term> == '-<value>' and <lead-digit> <= 3.5
+    <function> == 'sqrt' and <term> == '-<value>' and <integer> > 13.5 and <lead-digit> <= 3.5 and <term> > -94.89500045776367
+    <function> == 'sqrt' and <term> == '-<value>' and <integer> <= 13.5 and <lead-digit> <= 3.5 and <term> > -94.89500045776367
+    <function> == 'sqrt' and <term> == '-<value>' and <integer> <= 13.5 and <lead-digit> > 3.5 and <term> > -94.89500045776367
+    <function> == 'sqrt' and <term> == '-<value>' and <lead-digit> <= 3.5
+    <function> == 'sqrt' and <term> == '-<value>' and <integer> <= 13.5 and <lead-digit> <= 3.5 and <term> <= -94.89500045776367
+    <function> == 'sqrt' and <term> == '-<value>' and <lead-digit> <= 3.5 and <term> <= -94.89500045776367
+    <function> == 'sqrt' and <term> == '-<value>' and <integer> > 13.5 and <lead-digit> > 3.5 and <term> > -94.89500045776367
+    <function> == 'sqrt' and <lead-digit> > 3.5 and <term> > -1530829.25
+    <function> == 'sqrt' and <term> == '-<value>' and <lead-digit> > 3.5 and <term> > -94.89500045776367
+    <function> == 'sqrt' and <term> == '-<value>' and <lead-digit> <= 3.5 and <term> <= -94.89500045776367
+    <function> == 'sqrt' and <term> == '-<value>' and <lead-digit> > 3.5
+    <function> == 'sqrt' and <term> == '-<value>' and <lead-digit> <= 3.5 and <term> > -94.89500045776367
+    <function> == 'sqrt' and <term> == '-<value>' and <lead-digit> > 3.5 and <term> <= -94.89500045776367
+    <function> == 'sqrt' and <term> == '-<value>' and <integer> > 13.5 and <lead-digit> <= 3.5 and <term> <= -94.89500045776367
+    <digit> == '7' and <lead-digit> <= 4.5
+    <digit> == '7' and <lead-digit> > 4.5
+    <function> == 'sqrt' and <lead-digit> <= 3.5 and <term> > -1530829.25
   New samples:
-    sin(-688), sin(9), tan(-48.4), tan(-71), sqrt(5.82), sqrt(-8), sin(-37881), tan(1), tan(2), sin(-6.4), sqrt(-6.4052), cos(7.5), tan(-4.3), sin(-3), sqrt(-559), cos(7.7), sqrt(-63.68), tan(-22), tan(-180), cos(-417.2), tan(-9.9285), tan(3.2), sqrt(-0.9), sqrt(3), tan(-85539), sin(8.289), tan(4.69), cos(7), tan(-3), sqrt(8.2), sin(-57.426), cos(3), sin(-13), sin(-64), sqrt(-313), sqrt(2), sqrt(1), sqrt(-7.488), sqrt(-6.6), tan(-3), cos(9), cos(-2575), cos(-3.627), tan(3), sin(8), sin(-0.86), sqrt(-73840), sin(-92), sqrt(-9), sin(-8), sqrt(-8279), sqrt(1.2), cos(1.4), cos(-5388.56), sqrt(-455.9), cos(-81.51), cos(-8.37), cos(-2257), sin(-2.27), cos(-8), sqrt(-77.7), cos(-69.2), tan(-6), tan(-2.78), cos(-827), sin(-13.8), sqrt(-81), sin(5.638), sqrt(9.1), sqrt(-962820), cos(-6), tan(309.328), sqrt(-8), cos(-1098), sin(-11.68), sqrt(-419.467), cos(925.4029843)
+    tan(354.30), tan(-23), sin(-14), sin(-2506.60683), tan(-28273.15), cos(21), cos(-355.7), sin(-285.3), cos(72.73), sqrt(-820), sqrt(-2803), cos(-745), tan(-86), sin(773), sin(-472960), sin(93.51), tan(435.2), tan(9221.5940), tan(65708), cos(-972.1), tan(-785), tan(47), sin(732), sin(42580.2), sin(-9700), sin(-7046), tan(-846), cos(8036128.2), tan(-90.9), sin(75), tan(50), cos(-556), sin(-71), tan(-77), sqrt(16553.8), sqrt(-2368.8), sqrt(-45.3), sin(-24.0), sqrt(163), sin(-36), sqrt(-77.258), tan(-36), tan(-19.09), sqrt(-40), sqrt(-4.478), sqrt(-30.815), sqrt(-16.25), tan(-13.8), sqrt(-54), sqrt(-42.8), sqrt(-6.97), sqrt(-3.7), sqrt(-76), sqrt(-5), sqrt(-6), sqrt(-1), sqrt(-0), sqrt(-24541.55), sqrt(-6), sqrt(-784), sqrt(-14.07), sqrt(-478), sqrt(-22), sqrt(-0), sqrt(-7.8), tan(-295), cos(-302.20019), sqrt(-9), sqrt(-3.8), sqrt(-18.080), sqrt(-2), sqrt(-80585.7), tan(-11.91), sqrt(-764), sqrt(152), sqrt(-299.9), sqrt(37), sqrt(-68), sin(9218.7), sqrt(-2), sqrt(-4), sqrt(-8.2), sqrt(7560.6), sin(-94.65), tan(-55), sqrt(-6.2), tan(-59), sqrt(479.30171938), sqrt(681), sqrt(-4), sqrt(-9.7), sqrt(904), sqrt(-0.43), sqrt(-2.1), sin(-84), sqrt(-0), sqrt(63.8), sqrt(-9.1), sqrt(960.47281930), sqrt(-8), sqrt(-7), sqrt(-1.8), cos(-80.57), sin(-68), sqrt(-3789), sqrt(577.82), sqrt(-12), sqrt(-4043.9), sqrt(-94.9), cos(-3332.2), sin(-289167.2871), sqrt(-19.32733), sqrt(-60395), tan(-3543), sqrt(-580.03), tan(-2370.280), sin(-208), tan(-2044586.876), sqrt(-23.0), cos(-276.26), cos(-394.802402), sqrt(-38.2), sqrt(237.5), cos(69.1), sin(-253)
 
 Iteration #20
   Decision Tree:
     if <lead-digit> <= 4.5000:
       if <function> == 'sqrt':
-        if <value> <= 42.5000:
-          if <term> <= -11.5000:
+        if <value> <= 41.7665:
+          if <term> == '-<value>':
             BUG
           else:
-            if <digits> == '<digit><digits>':
-              NO_BUG
-            else:
-              NO_BUG
+            NO_BUG
         else:
           NO_BUG
       else:
@@ -17741,34 +17771,25 @@
       NO_BUG
 
   New input specifications:
-    <digits> == '<digit><digits>' and <function> == 'sqrt' and <lead-digit> > 4.5 and <term> > -11.5 and <value> > 42.5
-    <function> == 'sqrt' and <lead-digit> > 4.5 and <term> <= -11.5 and <value> <= 42.5
-    <digits> == '<digit><digits>' and <function> == 'sqrt' and <lead-digit> > 4.5 and <term> <= -11.5 and <value> <= 42.5
-    <digits> == '<digit><digits>' and <function> == 'sqrt' and <lead-digit> <= 4.5 and <term> > -11.5 and <value> > 42.5
-    <digits> == '<digit><digits>' and <function> == 'sqrt' and <lead-digit> <= 4.5 and <term> > -11.5 and <value> > 42.5
-    <function> == 'sqrt' and <lead-digit> <= 4.5
-    <digits> == '<digit><digits>' and <function> == 'sqrt' and <lead-digit> <= 4.5 and <term> <= -11.5 and <value> <= 42.5
-    <digits> == '<digit><digits>' and <function> == 'sqrt' and <lead-digit> <= 4.5 and <term> > -11.5 and <value> <= 42.5
-    <function> == 'sqrt' and <lead-digit> <= 4.5 and <value> <= 42.5
-    <function> == 'sqrt' and <lead-digit> <= 4.5 and <term> > -11.5 and <value> <= 42.5
+    <function> == 'sqrt' and <lead-digit> > 4.5 and <value> <= 41.76650047302246
+    <function> == 'sqrt' and <term> == '-<value>' and <lead-digit> > 4.5 and <value> <= 41.76650047302246
+    <function> == 'sqrt' and <lead-digit> <= 4.5 and <value> > 41.76650047302246
+    <function> == 'sqrt' and <term> == '-<value>' and <lead-digit> <= 4.5 and <value> > 41.76650047302246
     <lead-digit> > 4.5
-    <function> == 'sqrt' and <lead-digit> <= 4.5 and <value> > 42.5
+    <lead-digit> <= 4.5
+    <function> == 'sqrt' and <term> == '-<value>' and <lead-digit> > 4.5 and <value> > 41.76650047302246
+    <function> == 'sqrt' and <lead-digit> <= 4.5
     <function> == 'sqrt' and <lead-digit> > 4.5
-    <function> == 'sqrt' and <lead-digit> > 4.5 and <term> <= -11.5 and <value> > 42.5
-    <function> == 'sqrt' and <lead-digit> > 4.5 and <value> > 42.5
-    <digits> == '<digit><digits>' and <function> == 'sqrt' and <lead-digit> > 4.5 and <term> > -11.5 and <value> > 42.5
+    <function> == 'sqrt' and <term> == '-<value>' and <lead-digit> <= 4.5 and <value> <= 41.76650047302246
+    <function> == 'sqrt' and <term> == '-<value>' and <lead-digit> > 4.5 and <value> <= 41.76650047302246
+    <function> == 'sqrt' and <term> == '-<value>' and <lead-digit> > 4.5 and <value> > 41.76650047302246
+    <function> == 'sqrt' and <lead-digit> > 4.5 and <value> > 41.76650047302246
     <function> == 'sqrt' and <lead-digit> <= 4.5
-    <digits> == '<digit><digits>' and <function> == 'sqrt' and <lead-digit> > 4.5 and <term> > -11.5 and <value> <= 42.5
-    <digits> == '<digit><digits>' and <function> == 'sqrt' and <lead-digit> <= 4.5 and <term> <= -11.5 and <value> <= 42.5
-    <digits> == '<digit><digits>' and <function> == 'sqrt' and <lead-digit> > 4.5 and <term> <= -11.5 and <value> <= 42.5
-    <digits> == '<digit><digits>' and <function> == 'sqrt' and <lead-digit> > 4.5 and <term> > -11.5 and <value> <= 42.5
-    <function> == 'sqrt' and <lead-digit> <= 4.5 and <term> <= -11.5 and <value> <= 42.5
-    <function> == 'sqrt' and <lead-digit> <= 4.5 and <term> <= -11.5 and <value> > 42.5
-    <function> == 'sqrt' and <lead-digit> > 4.5 and <value> <= 42.5
-    <lead-digit> <= 4.5
-    <digits> == '<digit><digits>' and <function> == 'sqrt' and <lead-digit> <= 4.5 and <term> > -11.5 and <value> <= 42.5
+    <function> == 'sqrt' and <term> == '-<value>' and <lead-digit> <= 4.5 and <value> > 41.76650047302246
+    <function> == 'sqrt' and <term> == '-<value>' and <lead-digit> <= 4.5 and <value> <= 41.76650047302246
+    <function> == 'sqrt' and <lead-digit> <= 4.5 and <value> <= 41.76650047302246
   New samples:
-    tan(91.1), sqrt(61.31), tan(86), cos(96.8), sqrt(-543), sqrt(-65.38), sqrt(-78.0), sqrt(-76), sqrt(-54), sqrt(-35), sqrt(297), sqrt(44), sin(-1577925), cos(-16), sin(-13), sqrt(33.042), sqrt(16.8522716), sqrt(31), tan(913081.7), sqrt(48), cos(-86), sqrt(-75), sqrt(55.6), sqrt(51.313), sqrt(-417), sqrt(9713), sqrt(5070.52), sqrt(1.54), sqrt(8.4296), sqrt(712.23), sqrt(51.0027058), sqrt(-6.044), sqrt(-29.4), sqrt(-176.92), sqrt(-17.2), sqrt(-36870.6054), sqrt(-472.76), sqrt(-241), sqrt(-523.22000), sqrt(-6962619.60), sqrt(-9.1), sqrt(7), sqrt(-5), sqrt(4), sqrt(98.1), sqrt(-4), sqrt(4), sqrt(-38), sqrt(-4763), sqrt(0), sqrt(-1.7950), sqrt(-8.81), sqrt(-8.3), sqrt(63), sqrt(7995), sqrt(91), sqrt(68.7), sqrt(-5), sqrt(-8.314), sqrt(-7), sqrt(-38.6), sqrt(-64.032), sqrt(-7.3), sqrt(-92), sqrt(-1), sqrt(-23), sqrt(3), sqrt(8), sqrt(-5.2), sqrt(-1), sqrt(9107), sqrt(-14.5), sqrt(0.61), sqrt(52), sqrt(1.7), sqrt(-7), sqrt(7), sqrt(0.40), sqrt(-8), tan(26), sqrt(39.7)
+    sqrt(-8.93), sqrt(-30.17), sqrt(6.536), sqrt(12.22), sqrt(-80), sqrt(9), sqrt(-5), sqrt(5.3), sqrt(-3.4), sqrt(-81.62), sqrt(-1), sqrt(50822), sqrt(9.7), sqrt(-0), sqrt(57308.728), sqrt(-26), sqrt(-2.8), sqrt(-7), sqrt(8), sqrt(-59), sqrt(-4), sqrt(1.1), sqrt(36), sqrt(-551220.4), sqrt(2), sqrt(6.388), sqrt(0.5), sqrt(-6), sqrt(-12.2), sqrt(-965), sqrt(-37), sqrt(-0), sqrt(-33), sqrt(-3.7), sqrt(-2.92), sqrt(-957.82897), sqrt(-13580), sqrt(-49.6), sqrt(972), sin(176), sqrt(65796), cos(138988162.948), cos(99), sin(30.0), sqrt(-31), tan(38), sqrt(6), sqrt(436.3512), tan(11.1329), cos(12.1), sqrt(6), sqrt(5), sqrt(2), sqrt(7.207), sqrt(6), sqrt(1), sqrt(61.84263), sqrt(22), sqrt(9), sqrt(3), sqrt(97.05), sqrt(5.6), sqrt(2.209365), sqrt(3), sqrt(6.6), sqrt(-900.97008), sqrt(-97.650), sqrt(39), sqrt(48503.68), sin(-22.2), sqrt(-6), sqrt(-192), sin(-12.7), tan(-22), sqrt(-3085.50), sqrt(-5.0464), sqrt(-4), sqrt(-6), sqrt(-278750), sin(-17.8), sqrt(-13)
 
@@ -18215,10 +18236,10 @@ /* fitted */ background-color: var(--sklearn-color-fitted-level-3); } -
DecisionTreeClassifier(class_weight={'BUG': 0.03571428571428571,
-                                     'NO_BUG': 0.0012804097311139564},
-                       max_depth=5)
In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.
@@ -14289,22 +14289,22 @@

Quiz

- -
+ +
- -
+ +
- -
+ +
- -
+ +

- - + +
@@ -14659,10 +14659,10 @@

Quiz

Traceback (most recent call last):
-  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_84673/283236387.py", line 2, in <module>
+  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_18303/283236387.py", line 2, in <module>
     t = Time(-23, 0, 0)
         ^^^^^^^^^^^^^^^
-  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_84673/559831374.py", line 3, in __init__
+  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_18303/559831374.py", line 3, in __init__
     assert 0 <= hours <= 23
            ^^^^^^^^^^^^^^^^
 AssertionError (expected)
@@ -14865,10 +14865,10 @@ 

Quiz

Traceback (most recent call last):
-  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_84673/91299477.py", line 2, in <module>
+  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_18303/91299477.py", line 2, in <module>
     my_time.hours = 25  # type: ignore
     ^^^^^^^^^^^^^
-  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_84673/2658705698.py", line 8, in hours
+  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_18303/2658705698.py", line 8, in hours
     assert 0 <= new_hours <= 23
            ^^^^^^^^^^^^^^^^^^^^
 AssertionError (expected)
@@ -14990,13 +14990,13 @@ 

Quiz

Traceback (most recent call last):
-  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_84673/283236387.py", line 2, in <module>
+  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_18303/283236387.py", line 2, in <module>
     t = Time(-23, 0, 0)
         ^^^^^^^^^^^^^^^
-  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_84673/346828762.py", line 6, in __init__
+  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_18303/346828762.py", line 6, in __init__
     assert self.repOK()
            ^^^^^^^^^^^^
-  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_84673/478898990.py", line 3, in repOK
+  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_18303/478898990.py", line 3, in repOK
     assert 0 <= self.hours() <= 23
            ^^^^^^^^^^^^^^^^^^^^^^^
 AssertionError (expected)
@@ -15129,13 +15129,13 @@ 

Quiz

Traceback (most recent call last):
-  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_84673/119323666.py", line 2, in <module>
+  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_18303/119323666.py", line 2, in <module>
     t = Time("After midnight")  # type: ignore
         ^^^^^^^^^^^^^^^^^^^^^^
-  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_84673/346828762.py", line 6, in __init__
+  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_18303/346828762.py", line 6, in __init__
     assert self.repOK()
            ^^^^^^^^^^^^
-  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_84673/1587012707.py", line 3, in repOK
+  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_18303/1587012707.py", line 3, in repOK
     assert isinstance(self.hours(), int)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 AssertionError (expected)
@@ -15460,7 +15460,7 @@ 

Quiz

Traceback (most recent call last):
-  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_84673/295675708.py", line 3, in <module>
+  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_18303/295675708.py", line 3, in <module>
     "foo"[index]
     ~~~~~^^^^^^^
 IndexError: string index out of range (expected)
@@ -16608,9 +16608,9 @@ 

Quiz

Traceback (most recent call last):
-  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_84673/381644293.py", line 2, in <module>
+  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_18303/381644293.py", line 2, in <module>
     dynamic_mem.allocate(1)
-  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_84673/2922652606.py", line 45, in allocate
+  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_18303/2922652606.py", line 45, in allocate
     raise MemoryError("Out of Memory")
 MemoryError: Out of Memory (expected)
 
@@ -17261,9 +17261,9 @@

Quiz

Traceback (most recent call last):
-  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_84673/2188947149.py", line 2, in <module>
+  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_18303/2188947149.py", line 2, in <module>
     dynamic_mem.allocate(1)
-  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_84673/2922652606.py", line 20, in allocate
+  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_18303/2922652606.py", line 20, in allocate
     while chunk < self.size:
           ^^^^^^^^^^^^^^^^^
   File "Timeout.ipynb", line 43, in timeout_handler
@@ -17785,13 +17785,13 @@ 

Quiz

Traceback (most recent call last):
-  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_84673/1363131886.py", line 2, in <module>
+  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_18303/1363131886.py", line 2, in <module>
     x = managed_mem[p + 2]
         ~~~~~~~~~~~^^^^^^^
-  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_84673/2465984283.py", line 3, in __getitem__
+  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_18303/2465984283.py", line 3, in __getitem__
     return self.read(address)
            ^^^^^^^^^^^^^^^^^^
-  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_84673/2898840933.py", line 11, in read
+  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_18303/2898840933.py", line 11, in read
     assert self.initialized[address], \
            ~~~~~~~~~~~~~~~~^^^^^^^^^
 AssertionError: Reading from uninitialized memory (expected)
@@ -17918,12 +17918,12 @@ 

Quiz

Traceback (most recent call last):
-  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_84673/4208287712.py", line 2, in <module>
+  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_18303/4208287712.py", line 2, in <module>
     managed_mem[p] = 10
     ~~~~~~~~~~~^^^
-  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_84673/2465984283.py", line 6, in __setitem__
+  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_18303/2465984283.py", line 6, in __setitem__
     self.write(address, item)
-  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_84673/2898840933.py", line 3, in write
+  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_18303/2898840933.py", line 3, in write
     assert self.allocated[address], \
            ~~~~~~~~~~~~~~^^^^^^^^^
 AssertionError: Writing into unallocated memory (expected)
@@ -17960,9 +17960,9 @@ 

Quiz

Traceback (most recent call last):
-  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_84673/3645412891.py", line 2, in <module>
+  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_18303/3645412891.py", line 2, in <module>
     managed_mem.free(p)
-  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_84673/193494573.py", line 10, in free
+  File "/var/folders/n2/xd9445p97rb3xh7m1dfx8_4h0006ts/T/ipykernel_18303/193494573.py", line 10, in free
     assert self.allocated[base], \
            ~~~~~~~~~~~~~~^^^^^^
 AssertionError: Freeing memory that is already freed (expected)
@@ -18244,23 +18244,23 @@ 

Quiz

-
testuseafterfree(84986,0x1f6e94240) malloc: nano zone abandoned due to inability to reserve vm space.
+
testuseafterfree(18438,0x205ddc240) malloc: nano zone abandoned due to inability to reserve vm space.
 =================================================================
-==84986==ERROR: AddressSanitizer: heap-use-after-free on address 0x614000000068 at pc 0x0001045dbeb8 bp 0x00016b8269c0 sp 0x00016b8269b8
+==18438==ERROR: AddressSanitizer: heap-use-after-free on address 0x614000000068 at pc 0x000100133eb8 bp 0x00016fccea60 sp 0x00016fccea58
 READ of size 4 at 0x614000000068 thread T0
-    #0 0x1045dbeb4 in main+0x94 (testuseafterfree:arm64+0x100003eb4)
-    #1 0x18d234270  (<unknown module>)
+    #0 0x100133eb4 in main+0x94 (testuseafterfree:arm64+0x100003eb4)
+    #1 0x19c17c270  (<unknown module>)
 
 0x614000000068 is located 40 bytes inside of 400-byte region [0x614000000040,0x6140000001d0)
 freed by thread T0 here:
-    #0 0x104b28d40 in free+0x98 (libclang_rt.asan_osx_dynamic.dylib:arm64e+0x54d40)
-    #1 0x1045dbe58 in main+0x38 (testuseafterfree:arm64+0x100003e58)
-    #2 0x18d234270  (<unknown module>)
+    #0 0x100684d40 in free+0x98 (libclang_rt.asan_osx_dynamic.dylib:arm64e+0x54d40)
+    #1 0x100133e58 in main+0x38 (testuseafterfree:arm64+0x100003e58)
+    #2 0x19c17c270  (<unknown module>)
 
 previously allocated by thread T0 here:
-    #0 0x104b28c04 in malloc+0x94 (libclang_rt.asan_osx_dynamic.dylib:arm64e+0x54c04)
-    #1 0x1045dbe4c in main+0x2c (testuseafterfree:arm64+0x100003e4c)
-    #2 0x18d234270  (<unknown module>)
+    #0 0x100684c04 in malloc+0x94 (libclang_rt.asan_osx_dynamic.dylib:arm64e+0x54c04)
+    #1 0x100133e4c in main+0x2c (testuseafterfree:arm64+0x100003e4c)
+    #2 0x19c17c270  (<unknown module>)
 
 SUMMARY: AddressSanitizer: heap-use-after-free (testuseafterfree:arm64+0x100003eb4) in main+0x94
 Shadow bytes around the buggy address:
@@ -18294,7 +18294,7 @@ 

Quiz

ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb -==84986==ABORTING +==18438==ABORTING
@@ -18340,28 +18340,28 @@

Quiz

-
testoverflow(85145,0x1f6e94240) malloc: nano zone abandoned due to inability to reserve vm space.
+
testoverflow(18460,0x205ddc240) malloc: nano zone abandoned due to inability to reserve vm space.
 =================================================================
-==85145==ERROR: AddressSanitizer: global-buffer-overflow on address 0x000100be3eaa at pc 0x000100be3df0 bp 0x00016f21e9e0 sp 0x00016f21e9d8
-READ of size 1 at 0x000100be3eaa thread T0
-    #0 0x100be3dec in main+0x84 (testoverflow:arm64+0x100003dec)
-    #1 0x18d234270  (<unknown module>)
+==18460==ERROR: AddressSanitizer: global-buffer-overflow on address 0x0001009abeaa at pc 0x0001009abdf0 bp 0x00016f456a80 sp 0x00016f456a78
+READ of size 1 at 0x0001009abeaa thread T0
+    #0 0x1009abdec in main+0x84 (testoverflow:arm64+0x100003dec)
+    #1 0x19c17c270  (<unknown module>)
 
-0x000100be3eaa is located 6 bytes after global variable '.str' defined in 'testoverflow.c' (0x100be3ea0) of size 4
+0x0001009abeaa is located 6 bytes after global variable '.str' defined in 'testoverflow.c' (0x1009abea0) of size 4
   '.str' is ascii string 'foo'
 SUMMARY: AddressSanitizer: global-buffer-overflow (testoverflow:arm64+0x100003dec) in main+0x84
 Shadow bytes around the buggy address:
-  0x000100be3c00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-  0x000100be3c80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-  0x000100be3d00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-  0x000100be3d80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-  0x000100be3e00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-=>0x000100be3e80: 00 00 00 00 04[f9]f9 f9 00 00 00 00 00 00 00 00
-  0x000100be3f00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-  0x000100be3f80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-  0x000100be4000: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-  0x000100be4080: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-  0x000100be4100: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+  0x0001009abc00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+  0x0001009abc80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+  0x0001009abd00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+  0x0001009abd80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+  0x0001009abe00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+=>0x0001009abe80: 00 00 00 00 04[f9]f9 f9 00 00 00 00 00 00 00 00
+  0x0001009abf00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+  0x0001009abf80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+  0x0001009ac000: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+  0x0001009ac080: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+  0x0001009ac100: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 Shadow byte legend (one shadow byte represents 8 application bytes):
   Addressable:           00
   Partially addressable: 01 02 03 04 05 06 07 
@@ -18381,7 +18381,7 @@ 

Quiz

ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb -==85145==ABORTING +==18460==ABORTING
diff --git a/docs/beta/html/ChangeCounter.html b/docs/beta/html/ChangeCounter.html index 10566f26..a955f561 100644 --- a/docs/beta/html/ChangeCounter.html +++ b/docs/beta/html/ChangeCounter.html @@ -12117,9 +12117,9 @@

The map() method of ChangeCounter and FineChangeCounter produces an interactive tree map that allows exploring the elements of a repository. The redder (darker) a rectangle, the more changes it has seen; the larger a rectangle, the larger its size in bytes.

>>> fine_change_counter.map()
 
-