#
tokens: 46567/50000 5/1140 files (page 62/103)
lines: on (toggle) GitHub
raw markdown copy reset
This is page 62 of 103. Use http://codebase.md/cyfrin/aderyn?lines=true&page={x} to view the full context.

# Directory Structure

```
├── .cargo
│   └── config.toml
├── .git-blame-ignore-revs
├── .gitattributes
├── .github
│   ├── images
│   │   ├── aderyn_logo.png
│   │   ├── poweredbycyfrinblack.png
│   │   └── poweredbycyfrinblue.png
│   ├── ISSUE_TEMPLATE
│   │   ├── bug_report.md
│   │   ├── false_positive_issue.md
│   │   └── feature_request.md
│   └── workflows
│       ├── cargo.yml
│       ├── dependencies.yml
│       ├── release.yml
│       ├── reports.yml
│       └── toml.yml
├── .gitignore
├── .gitmodules
├── .vscode
│   └── settings.json
├── aderyn
│   ├── Cargo.toml
│   ├── oranda.json
│   ├── README.md
│   ├── src
│   │   ├── birdsong.rs
│   │   ├── completions.rs
│   │   ├── lib.rs
│   │   ├── lsp.rs
│   │   ├── main.rs
│   │   ├── mcp.rs
│   │   └── panic.rs
│   └── templates
│       └── aderyn.toml
├── aderyn_core
│   ├── .gitignore
│   ├── Cargo.toml
│   ├── README.md
│   ├── src
│   │   ├── ast
│   │   │   ├── ast_nodes.rs
│   │   │   ├── ast.rs
│   │   │   ├── impls
│   │   │   │   ├── ctx
│   │   │   │   │   ├── utils.rs
│   │   │   │   │   └── workspace.rs
│   │   │   │   ├── ctx.rs
│   │   │   │   ├── disp
│   │   │   │   │   ├── blocks.rs
│   │   │   │   │   ├── contracts.rs
│   │   │   │   │   ├── enumerations.rs
│   │   │   │   │   ├── errors.rs
│   │   │   │   │   ├── events.rs
│   │   │   │   │   ├── expressions.rs
│   │   │   │   │   ├── functions.rs
│   │   │   │   │   ├── identifiers.rs
│   │   │   │   │   ├── literals.rs
│   │   │   │   │   ├── modifiers.rs
│   │   │   │   │   ├── statements.rs
│   │   │   │   │   ├── structures.rs
│   │   │   │   │   ├── types.rs
│   │   │   │   │   ├── user_defined_value_types.rs
│   │   │   │   │   ├── using_for_directives.rs
│   │   │   │   │   └── variables.rs
│   │   │   │   ├── disp.rs
│   │   │   │   ├── node
│   │   │   │   │   ├── blocks.rs
│   │   │   │   │   ├── contracts.rs
│   │   │   │   │   ├── documentation.rs
│   │   │   │   │   ├── enumerations.rs
│   │   │   │   │   ├── errors.rs
│   │   │   │   │   ├── events.rs
│   │   │   │   │   ├── expressions.rs
│   │   │   │   │   ├── functions.rs
│   │   │   │   │   ├── identifiers.rs
│   │   │   │   │   ├── import_directives.rs
│   │   │   │   │   ├── literals.rs
│   │   │   │   │   ├── modifiers.rs
│   │   │   │   │   ├── pragma_directives.rs
│   │   │   │   │   ├── source_units.rs
│   │   │   │   │   ├── statements.rs
│   │   │   │   │   ├── structures.rs
│   │   │   │   │   ├── types.rs
│   │   │   │   │   ├── user_defined_value_types.rs
│   │   │   │   │   ├── using_for_directives.rs
│   │   │   │   │   └── variables.rs
│   │   │   │   ├── node.rs
│   │   │   │   ├── own
│   │   │   │   │   ├── hashing.rs
│   │   │   │   │   ├── node_id.rs
│   │   │   │   │   ├── source_units.rs
│   │   │   │   │   └── utils.rs
│   │   │   │   └── own.rs
│   │   │   ├── impls.rs
│   │   │   ├── macros.rs
│   │   │   ├── magic.rs
│   │   │   ├── node_type.rs
│   │   │   └── yul.rs
│   │   ├── ast.rs
│   │   ├── audit
│   │   │   ├── attack_surface.rs
│   │   │   ├── auditor.rs
│   │   │   ├── entrypoint.rs
│   │   │   └── public_functions_no_sender.rs
│   │   ├── audit.rs
│   │   ├── context
│   │   │   ├── browser
│   │   │   │   ├── ancestral_line.rs
│   │   │   │   ├── closest_ancestor.rs
│   │   │   │   ├── external_calls.rs
│   │   │   │   ├── extractor.rs
│   │   │   │   ├── immediate_children.rs
│   │   │   │   ├── location.rs
│   │   │   │   ├── macros.rs
│   │   │   │   ├── parent.rs
│   │   │   │   ├── peek_over.rs
│   │   │   │   ├── peek_under.rs
│   │   │   │   ├── peek.rs
│   │   │   │   ├── siblings.rs
│   │   │   │   ├── sort_nodes.rs
│   │   │   │   └── storage_vars.rs
│   │   │   ├── browser.rs
│   │   │   ├── capturable.rs
│   │   │   ├── flow
│   │   │   │   ├── display.rs
│   │   │   │   ├── error.rs
│   │   │   │   ├── kind.rs
│   │   │   │   ├── primitives.rs
│   │   │   │   ├── reducibles.rs
│   │   │   │   ├── tests.rs
│   │   │   │   ├── utils.rs
│   │   │   │   ├── visualizer.rs
│   │   │   │   └── voids.rs
│   │   │   ├── flow.rs
│   │   │   ├── graph
│   │   │   │   ├── callgraph
│   │   │   │   │   ├── legacy.rs
│   │   │   │   │   ├── new.rs
│   │   │   │   │   ├── tests.rs
│   │   │   │   │   ├── utils.rs
│   │   │   │   │   └── visit.rs
│   │   │   │   ├── callgraph.rs
│   │   │   │   ├── preprocess
│   │   │   │   │   ├── legacy.rs
│   │   │   │   │   └── new.rs
│   │   │   │   ├── preprocess.rs
│   │   │   │   ├── traits.rs
│   │   │   │   └── utils.rs
│   │   │   ├── graph.rs
│   │   │   ├── macros.rs
│   │   │   ├── mcp
│   │   │   │   ├── callgraph
│   │   │   │   │   ├── render.rs
│   │   │   │   │   ├── tool.rs
│   │   │   │   │   └── utils.rs
│   │   │   │   ├── callgraph.rs
│   │   │   │   ├── contract_surface
│   │   │   │   │   ├── render.rs
│   │   │   │   │   ├── tool.rs
│   │   │   │   │   └── util.rs
│   │   │   │   ├── contract_surface.rs
│   │   │   │   ├── list_contracts
│   │   │   │   │   ├── render.rs
│   │   │   │   │   └── tool.rs
│   │   │   │   ├── list_contracts.rs
│   │   │   │   ├── node_finder
│   │   │   │   │   ├── render.rs
│   │   │   │   │   ├── tool.rs
│   │   │   │   │   └── utils.rs
│   │   │   │   ├── node_finder.rs
│   │   │   │   ├── node_summarizer
│   │   │   │   │   ├── render.rs
│   │   │   │   │   ├── tool.rs
│   │   │   │   │   └── utils.rs
│   │   │   │   ├── node_summarizer.rs
│   │   │   │   ├── project_overview
│   │   │   │   │   ├── render.rs
│   │   │   │   │   └── tool.rs
│   │   │   │   ├── project_overview.rs
│   │   │   │   ├── tool_guide
│   │   │   │   │   └── tool.rs
│   │   │   │   └── tool_guide.rs
│   │   │   ├── mcp.rs
│   │   │   ├── router
│   │   │   │   ├── external_calls.rs
│   │   │   │   ├── internal_calls.rs
│   │   │   │   ├── modifier_calls.rs
│   │   │   │   └── tests.rs
│   │   │   ├── router.rs
│   │   │   └── workspace.rs
│   │   ├── context.rs
│   │   ├── detect
│   │   │   ├── detector.rs
│   │   │   ├── entrypoint.rs
│   │   │   ├── helpers.rs
│   │   │   ├── high
│   │   │   │   ├── _template.rs
│   │   │   │   ├── abi_encode_packed_hash_collision.rs
│   │   │   │   ├── arbitrary_transfer_from.rs
│   │   │   │   ├── const_func_changes_state.rs
│   │   │   │   ├── contract_locks_ether.rs
│   │   │   │   ├── dangerous_unary_operator.rs
│   │   │   │   ├── delegate_call_unchecked_address.rs
│   │   │   │   ├── delete_nested_mapping.rs
│   │   │   │   ├── dynamic_array_length_assignment.rs
│   │   │   │   ├── enumerable_loop_removal.rs
│   │   │   │   ├── eth_send_unchecked_address.rs
│   │   │   │   ├── experimental_encoder.rs
│   │   │   │   ├── function_selector_collision.rs
│   │   │   │   ├── incorrect_caret_operator.rs
│   │   │   │   ├── incorrect_erc20_interface.rs
│   │   │   │   ├── incorrect_erc721_interface.rs
│   │   │   │   ├── incorrect_shift_order.rs
│   │   │   │   ├── misused_boolean.rs
│   │   │   │   ├── msg_value_in_loops.rs
│   │   │   │   ├── multiple_constructors.rs
│   │   │   │   ├── nested_struct_in_mapping.rs
│   │   │   │   ├── out_of_order_retryable.rs
│   │   │   │   ├── pre_declared_variable_usage.rs
│   │   │   │   ├── reentrancy_state_change.rs
│   │   │   │   ├── reused_contract_name.rs
│   │   │   │   ├── rtlo.rs
│   │   │   │   ├── selfdestruct.rs
│   │   │   │   ├── signed_integer_storage_array.rs
│   │   │   │   ├── state_variable_shadowing.rs
│   │   │   │   ├── storage_array_memory_edit.rs
│   │   │   │   ├── strict_equality_contract_balance.rs
│   │   │   │   ├── tautological_compare.rs
│   │   │   │   ├── tautology_or_contradiction.rs
│   │   │   │   ├── tx_origin_used_for_auth.rs
│   │   │   │   ├── unchecked_low_level_call.rs
│   │   │   │   ├── unchecked_send.rs
│   │   │   │   ├── unprotected_initializer.rs
│   │   │   │   ├── unsafe_casting.rs
│   │   │   │   ├── weak_randomness.rs
│   │   │   │   └── yul_return.rs
│   │   │   ├── high.rs
│   │   │   ├── low
│   │   │   │   ├── _template.rs
│   │   │   │   ├── assert_state_change.rs
│   │   │   │   ├── block_timestamp_deadline.rs
│   │   │   │   ├── boolean_equality.rs
│   │   │   │   ├── builtin_symbol_shadowing.rs
│   │   │   │   ├── centralization_risk.rs
│   │   │   │   ├── constant_function_contains_assembly.rs
│   │   │   │   ├── costly_loop.rs
│   │   │   │   ├── dead_code.rs
│   │   │   │   ├── delegatecall_in_loop.rs
│   │   │   │   ├── deprecated_oz_function.rs
│   │   │   │   ├── division_before_multiplication.rs
│   │   │   │   ├── ecrecover.rs
│   │   │   │   ├── empty_block.rs
│   │   │   │   ├── empty_require_revert.rs
│   │   │   │   ├── function_initializing_state.rs
│   │   │   │   ├── function_pointer_in_constructor.rs
│   │   │   │   ├── inconsistent_type_names.rs
│   │   │   │   ├── incorrect_modifier.rs
│   │   │   │   ├── internal_function_used_once.rs
│   │   │   │   ├── large_numeric_literal.rs
│   │   │   │   ├── literal_instead_of_constant.rs
│   │   │   │   ├── local_variable_shadowing.rs
│   │   │   │   ├── missing_inheritance.rs
│   │   │   │   ├── modifier_used_only_once.rs
│   │   │   │   ├── multiple_placeholders.rs
│   │   │   │   ├── non_reentrant_not_first.rs
│   │   │   │   ├── push_0_opcode.rs
│   │   │   │   ├── redundant_statement.rs
│   │   │   │   ├── require_revert_in_loop.rs
│   │   │   │   ├── return_bomb.rs
│   │   │   │   ├── solmate_safe_transfer_lib.rs
│   │   │   │   ├── state_change_without_event.rs
│   │   │   │   ├── state_no_address_check.rs
│   │   │   │   ├── state_variable_could_be_constant.rs
│   │   │   │   ├── state_variable_could_be_immutable.rs
│   │   │   │   ├── state_variable_read_external.rs
│   │   │   │   ├── storage_array_length_not_cached.rs
│   │   │   │   ├── todo.rs
│   │   │   │   ├── unchecked_return.rs
│   │   │   │   ├── uninitialized_local_variable.rs
│   │   │   │   ├── unsafe_erc20_operation.rs
│   │   │   │   ├── unsafe_oz_erc721_mint.rs
│   │   │   │   ├── unspecific_solidity_pragma.rs
│   │   │   │   ├── unused_error.rs
│   │   │   │   ├── unused_import.rs
│   │   │   │   ├── unused_public_function.rs
│   │   │   │   ├── unused_state_variable.rs
│   │   │   │   └── void_constructor.rs
│   │   │   ├── low.rs
│   │   │   └── test_utils.rs
│   │   ├── detect.rs
│   │   ├── lib.rs
│   │   ├── stats
│   │   │   ├── cloc.rs
│   │   │   ├── dbg_tips.txt
│   │   │   ├── ignore.rs
│   │   │   ├── token.rs
│   │   │   └── util.rs
│   │   ├── stats.rs
│   │   ├── test_utils
│   │   │   └── load_source_unit.rs
│   │   ├── test_utils.rs
│   │   ├── visitor
│   │   │   ├── ast_visitor.rs
│   │   │   ├── macros.rs
│   │   │   └── workspace_visitor.rs
│   │   └── visitor.rs
│   ├── templates
│   │   └── mcp-tool-response
│   │       ├── callgraph.md
│   │       ├── contract_surface.md
│   │       ├── list_contracts.md
│   │       ├── node_finder_get_all.md
│   │       ├── node_finder_grep.md
│   │       ├── node_finder_search.md
│   │       ├── node_summarizer.md
│   │       ├── project_overview.md
│   │       └── tool_guide.md
│   └── tests
│       ├── common
│       │   ├── ancestral_line.rs
│       │   ├── closest_ancestor.rs
│       │   ├── immediate_children.rs
│       │   ├── immediate_parent.rs
│       │   ├── mod.rs
│       │   ├── new_ast_nodes.rs
│       │   ├── peek_over.rs
│       │   └── sibling.rs
│       └── traversal.rs
├── aderyn_driver
│   ├── .gitignore
│   ├── benches
│   │   └── detectors.rs
│   ├── Cargo.toml
│   ├── README.md
│   ├── src
│   │   ├── compile.rs
│   │   ├── config.rs
│   │   ├── display.rs
│   │   ├── driver.rs
│   │   ├── interface
│   │   │   ├── json.rs
│   │   │   ├── lsp.rs
│   │   │   ├── markdown.rs
│   │   │   ├── mod.rs
│   │   │   ├── sarif.rs
│   │   │   ├── tables.rs
│   │   │   └── util.rs
│   │   ├── lib.rs
│   │   ├── mcp.rs
│   │   ├── process.rs
│   │   └── runner.rs
│   └── tests
│       └── astgen.rs
├── bacon.toml
├── benchmarks
│   ├── aderyn
│   │   ├── base
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   ├── change
│   │   │   └── estimates.json
│   │   ├── new
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   └── report
│   │       ├── both
│   │       │   ├── iteration_times.svg
│   │       │   └── pdf.svg
│   │       ├── change
│   │       │   ├── mean.svg
│   │       │   ├── median.svg
│   │       │   └── t-test.svg
│   │       ├── index.html
│   │       ├── iteration_times_small.svg
│   │       ├── iteration_times.svg
│   │       ├── MAD.svg
│   │       ├── mean.svg
│   │       ├── median.svg
│   │       ├── pdf_small.svg
│   │       ├── pdf.svg
│   │       ├── relative_iteration_times_small.svg
│   │       ├── relative_pdf_small.svg
│   │       ├── SD.svg
│   │       └── typical.svg
│   ├── arbitrary-transfer-from
│   │   ├── base
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   ├── change
│   │   │   └── estimates.json
│   │   ├── new
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   └── report
│   │       ├── both
│   │       │   ├── pdf.svg
│   │       │   └── regression.svg
│   │       ├── change
│   │       │   ├── mean.svg
│   │       │   ├── median.svg
│   │       │   └── t-test.svg
│   │       ├── index.html
│   │       ├── MAD.svg
│   │       ├── mean.svg
│   │       ├── median.svg
│   │       ├── pdf_small.svg
│   │       ├── pdf.svg
│   │       ├── regression_small.svg
│   │       ├── regression.svg
│   │       ├── relative_pdf_small.svg
│   │       ├── relative_regression_small.svg
│   │       ├── SD.svg
│   │       ├── slope.svg
│   │       └── typical.svg
│   ├── avoid-abi-encode-packed
│   │   ├── base
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   ├── change
│   │   │   └── estimates.json
│   │   ├── new
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   └── report
│   │       ├── both
│   │       │   ├── pdf.svg
│   │       │   └── regression.svg
│   │       ├── change
│   │       │   ├── mean.svg
│   │       │   ├── median.svg
│   │       │   └── t-test.svg
│   │       ├── index.html
│   │       ├── MAD.svg
│   │       ├── mean.svg
│   │       ├── median.svg
│   │       ├── pdf_small.svg
│   │       ├── pdf.svg
│   │       ├── regression_small.svg
│   │       ├── regression.svg
│   │       ├── relative_pdf_small.svg
│   │       ├── relative_regression_small.svg
│   │       ├── SD.svg
│   │       ├── slope.svg
│   │       └── typical.svg
│   ├── block-timestamp-deadline
│   │   ├── base
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   ├── change
│   │   │   └── estimates.json
│   │   ├── new
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   └── report
│   │       ├── both
│   │       │   ├── pdf.svg
│   │       │   └── regression.svg
│   │       ├── change
│   │       │   ├── mean.svg
│   │       │   ├── median.svg
│   │       │   └── t-test.svg
│   │       ├── index.html
│   │       ├── MAD.svg
│   │       ├── mean.svg
│   │       ├── median.svg
│   │       ├── pdf_small.svg
│   │       ├── pdf.svg
│   │       ├── regression_small.svg
│   │       ├── regression.svg
│   │       ├── relative_pdf_small.svg
│   │       ├── relative_regression_small.svg
│   │       ├── SD.svg
│   │       ├── slope.svg
│   │       └── typical.svg
│   ├── centralization-risk
│   │   ├── base
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   ├── change
│   │   │   └── estimates.json
│   │   ├── new
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   └── report
│   │       ├── both
│   │       │   ├── pdf.svg
│   │       │   └── regression.svg
│   │       ├── change
│   │       │   ├── mean.svg
│   │       │   ├── median.svg
│   │       │   └── t-test.svg
│   │       ├── index.html
│   │       ├── MAD.svg
│   │       ├── mean.svg
│   │       ├── median.svg
│   │       ├── pdf_small.svg
│   │       ├── pdf.svg
│   │       ├── regression_small.svg
│   │       ├── regression.svg
│   │       ├── relative_pdf_small.svg
│   │       ├── relative_regression_small.svg
│   │       ├── SD.svg
│   │       ├── slope.svg
│   │       └── typical.svg
│   ├── constants-instead-of-literals
│   │   ├── base
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   ├── change
│   │   │   └── estimates.json
│   │   ├── new
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   └── report
│   │       ├── both
│   │       │   ├── pdf.svg
│   │       │   └── regression.svg
│   │       ├── change
│   │       │   ├── mean.svg
│   │       │   ├── median.svg
│   │       │   └── t-test.svg
│   │       ├── index.html
│   │       ├── MAD.svg
│   │       ├── mean.svg
│   │       ├── median.svg
│   │       ├── pdf_small.svg
│   │       ├── pdf.svg
│   │       ├── regression_small.svg
│   │       ├── regression.svg
│   │       ├── relative_pdf_small.svg
│   │       ├── relative_regression_small.svg
│   │       ├── SD.svg
│   │       ├── slope.svg
│   │       └── typical.svg
│   ├── delegate-call-in-loop
│   │   ├── base
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   ├── change
│   │   │   └── estimates.json
│   │   ├── new
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   └── report
│   │       ├── both
│   │       │   ├── pdf.svg
│   │       │   └── regression.svg
│   │       ├── change
│   │       │   ├── mean.svg
│   │       │   ├── median.svg
│   │       │   └── t-test.svg
│   │       ├── index.html
│   │       ├── MAD.svg
│   │       ├── mean.svg
│   │       ├── median.svg
│   │       ├── pdf_small.svg
│   │       ├── pdf.svg
│   │       ├── regression_small.svg
│   │       ├── regression.svg
│   │       ├── relative_pdf_small.svg
│   │       ├── relative_regression_small.svg
│   │       ├── SD.svg
│   │       ├── slope.svg
│   │       └── typical.svg
│   ├── deprecated-oz-functions
│   │   ├── base
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   ├── change
│   │   │   └── estimates.json
│   │   ├── new
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   └── report
│   │       ├── both
│   │       │   ├── pdf.svg
│   │       │   └── regression.svg
│   │       ├── change
│   │       │   ├── mean.svg
│   │       │   ├── median.svg
│   │       │   └── t-test.svg
│   │       ├── index.html
│   │       ├── MAD.svg
│   │       ├── mean.svg
│   │       ├── median.svg
│   │       ├── pdf_small.svg
│   │       ├── pdf.svg
│   │       ├── regression_small.svg
│   │       ├── regression.svg
│   │       ├── relative_pdf_small.svg
│   │       ├── relative_regression_small.svg
│   │       ├── SD.svg
│   │       ├── slope.svg
│   │       └── typical.svg
│   ├── ecrecover
│   │   ├── base
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   ├── change
│   │   │   └── estimates.json
│   │   ├── new
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   └── report
│   │       ├── both
│   │       │   ├── pdf.svg
│   │       │   └── regression.svg
│   │       ├── change
│   │       │   ├── mean.svg
│   │       │   ├── median.svg
│   │       │   └── t-test.svg
│   │       ├── index.html
│   │       ├── MAD.svg
│   │       ├── mean.svg
│   │       ├── median.svg
│   │       ├── pdf_small.svg
│   │       ├── pdf.svg
│   │       ├── regression_small.svg
│   │       ├── regression.svg
│   │       ├── relative_pdf_small.svg
│   │       ├── relative_regression_small.svg
│   │       ├── SD.svg
│   │       ├── slope.svg
│   │       └── typical.svg
│   ├── empty-block
│   │   ├── base
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   ├── change
│   │   │   └── estimates.json
│   │   ├── new
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   └── report
│   │       ├── both
│   │       │   ├── pdf.svg
│   │       │   └── regression.svg
│   │       ├── change
│   │       │   ├── mean.svg
│   │       │   ├── median.svg
│   │       │   └── t-test.svg
│   │       ├── index.html
│   │       ├── MAD.svg
│   │       ├── mean.svg
│   │       ├── median.svg
│   │       ├── pdf_small.svg
│   │       ├── pdf.svg
│   │       ├── regression_small.svg
│   │       ├── regression.svg
│   │       ├── relative_pdf_small.svg
│   │       ├── relative_regression_small.svg
│   │       ├── SD.svg
│   │       ├── slope.svg
│   │       └── typical.svg
│   ├── hello_world
│   │   ├── base
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   ├── new
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   └── report
│   │       ├── index.html
│   │       ├── MAD.svg
│   │       ├── mean.svg
│   │       ├── median.svg
│   │       ├── pdf_small.svg
│   │       ├── pdf.svg
│   │       ├── regression_small.svg
│   │       ├── regression.svg
│   │       ├── SD.svg
│   │       ├── slope.svg
│   │       └── typical.svg
│   ├── inconsistent-type-names
│   │   ├── base
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   ├── change
│   │   │   └── estimates.json
│   │   ├── new
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   └── report
│   │       ├── both
│   │       │   ├── pdf.svg
│   │       │   └── regression.svg
│   │       ├── change
│   │       │   ├── mean.svg
│   │       │   ├── median.svg
│   │       │   └── t-test.svg
│   │       ├── index.html
│   │       ├── MAD.svg
│   │       ├── mean.svg
│   │       ├── median.svg
│   │       ├── pdf_small.svg
│   │       ├── pdf.svg
│   │       ├── regression_small.svg
│   │       ├── regression.svg
│   │       ├── relative_pdf_small.svg
│   │       ├── relative_regression_small.svg
│   │       ├── SD.svg
│   │       ├── slope.svg
│   │       └── typical.svg
│   ├── large-numeric-literal
│   │   ├── base
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   ├── change
│   │   │   └── estimates.json
│   │   ├── new
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   └── report
│   │       ├── both
│   │       │   ├── pdf.svg
│   │       │   └── regression.svg
│   │       ├── change
│   │       │   ├── mean.svg
│   │       │   ├── median.svg
│   │       │   └── t-test.svg
│   │       ├── index.html
│   │       ├── MAD.svg
│   │       ├── mean.svg
│   │       ├── median.svg
│   │       ├── pdf_small.svg
│   │       ├── pdf.svg
│   │       ├── regression_small.svg
│   │       ├── regression.svg
│   │       ├── relative_pdf_small.svg
│   │       ├── relative_regression_small.svg
│   │       ├── SD.svg
│   │       ├── slope.svg
│   │       └── typical.svg
│   ├── non-reentrant-before-others
│   │   ├── base
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   ├── change
│   │   │   └── estimates.json
│   │   ├── new
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   └── report
│   │       ├── both
│   │       │   ├── pdf.svg
│   │       │   └── regression.svg
│   │       ├── change
│   │       │   ├── mean.svg
│   │       │   ├── median.svg
│   │       │   └── t-test.svg
│   │       ├── index.html
│   │       ├── MAD.svg
│   │       ├── mean.svg
│   │       ├── median.svg
│   │       ├── pdf_small.svg
│   │       ├── pdf.svg
│   │       ├── regression_small.svg
│   │       ├── regression.svg
│   │       ├── relative_pdf_small.svg
│   │       ├── relative_regression_small.svg
│   │       ├── SD.svg
│   │       ├── slope.svg
│   │       └── typical.svg
│   ├── push-zero-opcode
│   │   ├── base
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   ├── change
│   │   │   └── estimates.json
│   │   ├── new
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   └── report
│   │       ├── both
│   │       │   ├── pdf.svg
│   │       │   └── regression.svg
│   │       ├── change
│   │       │   ├── mean.svg
│   │       │   ├── median.svg
│   │       │   └── t-test.svg
│   │       ├── index.html
│   │       ├── MAD.svg
│   │       ├── mean.svg
│   │       ├── median.svg
│   │       ├── pdf_small.svg
│   │       ├── pdf.svg
│   │       ├── regression_small.svg
│   │       ├── regression.svg
│   │       ├── relative_pdf_small.svg
│   │       ├── relative_regression_small.svg
│   │       ├── SD.svg
│   │       ├── slope.svg
│   │       └── typical.svg
│   ├── report
│   │   └── index.html
│   ├── require-with-string
│   │   ├── base
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   ├── change
│   │   │   └── estimates.json
│   │   ├── new
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   └── report
│   │       ├── both
│   │       │   ├── pdf.svg
│   │       │   └── regression.svg
│   │       ├── change
│   │       │   ├── mean.svg
│   │       │   ├── median.svg
│   │       │   └── t-test.svg
│   │       ├── index.html
│   │       ├── MAD.svg
│   │       ├── mean.svg
│   │       ├── median.svg
│   │       ├── pdf_small.svg
│   │       ├── pdf.svg
│   │       ├── regression_small.svg
│   │       ├── regression.svg
│   │       ├── relative_pdf_small.svg
│   │       ├── relative_regression_small.svg
│   │       ├── SD.svg
│   │       ├── slope.svg
│   │       └── typical.svg
│   ├── solmate-safe-transfer-lib
│   │   ├── base
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   ├── change
│   │   │   └── estimates.json
│   │   ├── new
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   └── report
│   │       ├── both
│   │       │   ├── pdf.svg
│   │       │   └── regression.svg
│   │       ├── change
│   │       │   ├── mean.svg
│   │       │   ├── median.svg
│   │       │   └── t-test.svg
│   │       ├── index.html
│   │       ├── MAD.svg
│   │       ├── mean.svg
│   │       ├── median.svg
│   │       ├── pdf_small.svg
│   │       ├── pdf.svg
│   │       ├── regression_small.svg
│   │       ├── regression.svg
│   │       ├── relative_pdf_small.svg
│   │       ├── relative_regression_small.svg
│   │       ├── SD.svg
│   │       ├── slope.svg
│   │       └── typical.svg
│   ├── unindexed-events
│   │   ├── base
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   ├── change
│   │   │   └── estimates.json
│   │   ├── new
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   └── report
│   │       ├── both
│   │       │   ├── pdf.svg
│   │       │   └── regression.svg
│   │       ├── change
│   │       │   ├── mean.svg
│   │       │   ├── median.svg
│   │       │   └── t-test.svg
│   │       ├── index.html
│   │       ├── MAD.svg
│   │       ├── mean.svg
│   │       ├── median.svg
│   │       ├── pdf_small.svg
│   │       ├── pdf.svg
│   │       ├── regression_small.svg
│   │       ├── regression.svg
│   │       ├── relative_pdf_small.svg
│   │       ├── relative_regression_small.svg
│   │       ├── SD.svg
│   │       ├── slope.svg
│   │       └── typical.svg
│   ├── unprotected-initializer
│   │   ├── base
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   ├── change
│   │   │   └── estimates.json
│   │   ├── new
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   └── report
│   │       ├── both
│   │       │   ├── pdf.svg
│   │       │   └── regression.svg
│   │       ├── change
│   │       │   ├── mean.svg
│   │       │   ├── median.svg
│   │       │   └── t-test.svg
│   │       ├── index.html
│   │       ├── MAD.svg
│   │       ├── mean.svg
│   │       ├── median.svg
│   │       ├── pdf_small.svg
│   │       ├── pdf.svg
│   │       ├── regression_small.svg
│   │       ├── regression.svg
│   │       ├── relative_pdf_small.svg
│   │       ├── relative_regression_small.svg
│   │       ├── SD.svg
│   │       ├── slope.svg
│   │       └── typical.svg
│   ├── unsafe-erc20-functions
│   │   ├── base
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   ├── change
│   │   │   └── estimates.json
│   │   ├── new
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   └── report
│   │       ├── both
│   │       │   ├── pdf.svg
│   │       │   └── regression.svg
│   │       ├── change
│   │       │   ├── mean.svg
│   │       │   ├── median.svg
│   │       │   └── t-test.svg
│   │       ├── index.html
│   │       ├── MAD.svg
│   │       ├── mean.svg
│   │       ├── median.svg
│   │       ├── pdf_small.svg
│   │       ├── pdf.svg
│   │       ├── regression_small.svg
│   │       ├── regression.svg
│   │       ├── relative_pdf_small.svg
│   │       ├── relative_regression_small.svg
│   │       ├── SD.svg
│   │       ├── slope.svg
│   │       └── typical.svg
│   ├── unsafe-oz-erc721-mint
│   │   ├── base
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   ├── change
│   │   │   └── estimates.json
│   │   ├── new
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   └── report
│   │       ├── both
│   │       │   ├── pdf.svg
│   │       │   └── regression.svg
│   │       ├── change
│   │       │   ├── mean.svg
│   │       │   ├── median.svg
│   │       │   └── t-test.svg
│   │       ├── index.html
│   │       ├── MAD.svg
│   │       ├── mean.svg
│   │       ├── median.svg
│   │       ├── pdf_small.svg
│   │       ├── pdf.svg
│   │       ├── regression_small.svg
│   │       ├── regression.svg
│   │       ├── relative_pdf_small.svg
│   │       ├── relative_regression_small.svg
│   │       ├── SD.svg
│   │       ├── slope.svg
│   │       └── typical.svg
│   ├── unspecific-solidity-pragma
│   │   ├── base
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   ├── change
│   │   │   └── estimates.json
│   │   ├── new
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   └── report
│   │       ├── both
│   │       │   ├── pdf.svg
│   │       │   └── regression.svg
│   │       ├── change
│   │       │   ├── mean.svg
│   │       │   ├── median.svg
│   │       │   └── t-test.svg
│   │       ├── index.html
│   │       ├── MAD.svg
│   │       ├── mean.svg
│   │       ├── median.svg
│   │       ├── pdf_small.svg
│   │       ├── pdf.svg
│   │       ├── regression_small.svg
│   │       ├── regression.svg
│   │       ├── relative_pdf_small.svg
│   │       ├── relative_regression_small.svg
│   │       ├── SD.svg
│   │       ├── slope.svg
│   │       └── typical.svg
│   ├── useless-internal-function
│   │   ├── base
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   ├── change
│   │   │   └── estimates.json
│   │   ├── new
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   └── report
│   │       ├── both
│   │       │   ├── pdf.svg
│   │       │   └── regression.svg
│   │       ├── change
│   │       │   ├── mean.svg
│   │       │   ├── median.svg
│   │       │   └── t-test.svg
│   │       ├── index.html
│   │       ├── MAD.svg
│   │       ├── mean.svg
│   │       ├── median.svg
│   │       ├── pdf_small.svg
│   │       ├── pdf.svg
│   │       ├── regression_small.svg
│   │       ├── regression.svg
│   │       ├── relative_pdf_small.svg
│   │       ├── relative_regression_small.svg
│   │       ├── SD.svg
│   │       ├── slope.svg
│   │       └── typical.svg
│   ├── useless-modifier
│   │   ├── base
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   ├── change
│   │   │   └── estimates.json
│   │   ├── new
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   └── report
│   │       ├── both
│   │       │   ├── pdf.svg
│   │       │   └── regression.svg
│   │       ├── change
│   │       │   ├── mean.svg
│   │       │   ├── median.svg
│   │       │   └── t-test.svg
│   │       ├── index.html
│   │       ├── MAD.svg
│   │       ├── mean.svg
│   │       ├── median.svg
│   │       ├── pdf_small.svg
│   │       ├── pdf.svg
│   │       ├── regression_small.svg
│   │       ├── regression.svg
│   │       ├── relative_pdf_small.svg
│   │       ├── relative_regression_small.svg
│   │       ├── SD.svg
│   │       ├── slope.svg
│   │       └── typical.svg
│   ├── useless-public-function
│   │   ├── base
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   ├── change
│   │   │   └── estimates.json
│   │   ├── new
│   │   │   ├── benchmark.json
│   │   │   ├── estimates.json
│   │   │   ├── sample.json
│   │   │   └── tukey.json
│   │   └── report
│   │       ├── both
│   │       │   ├── pdf.svg
│   │       │   └── regression.svg
│   │       ├── change
│   │       │   ├── mean.svg
│   │       │   ├── median.svg
│   │       │   └── t-test.svg
│   │       ├── index.html
│   │       ├── MAD.svg
│   │       ├── mean.svg
│   │       ├── median.svg
│   │       ├── pdf_small.svg
│   │       ├── pdf.svg
│   │       ├── regression_small.svg
│   │       ├── regression.svg
│   │       ├── relative_pdf_small.svg
│   │       ├── relative_regression_small.svg
│   │       ├── SD.svg
│   │       ├── slope.svg
│   │       └── typical.svg
│   └── zero-address-check
│       ├── base
│       │   ├── benchmark.json
│       │   ├── estimates.json
│       │   ├── sample.json
│       │   └── tukey.json
│       ├── change
│       │   └── estimates.json
│       ├── new
│       │   ├── benchmark.json
│       │   ├── estimates.json
│       │   ├── sample.json
│       │   └── tukey.json
│       └── report
│           ├── both
│           │   ├── pdf.svg
│           │   └── regression.svg
│           ├── change
│           │   ├── mean.svg
│           │   ├── median.svg
│           │   └── t-test.svg
│           ├── index.html
│           ├── MAD.svg
│           ├── mean.svg
│           ├── median.svg
│           ├── pdf_small.svg
│           ├── pdf.svg
│           ├── regression_small.svg
│           ├── regression.svg
│           ├── relative_pdf_small.svg
│           ├── relative_regression_small.svg
│           ├── SD.svg
│           ├── slope.svg
│           └── typical.svg
├── Cargo.lock
├── Cargo.toml
├── cli
│   ├── benchmarks.sh
│   └── reportgen.sh
├── CODEOWNERS
├── CONTRIBUTING.md
├── cyfrinup
│   ├── dynamic_script
│   └── why.md
├── deny.toml
├── dist-workspace.toml
├── funding.json
├── LICENSE
├── Makefile
├── package-lock.json
├── package.json
├── README.md
├── RELEASE_CHECKLIST.md
├── reports
│   ├── adhoc-sol-files-highs-only-report.json
│   ├── adhoc-sol-files-report.md
│   ├── ccip-functions-report.md
│   ├── empty_report.md
│   ├── hardhat-playground-report.md
│   ├── nft-report-icm.md
│   ├── nft-report.md
│   ├── prb-math-report.md
│   ├── report.json
│   ├── report.md
│   ├── report.sarif
│   ├── sablier-aderyn-toml-nested-root.md
│   ├── templegold-report.md
│   └── uniswap_profile.md
├── rust-toolchain.toml
├── rustfmt.toml
├── tests
│   ├── adhoc-sol-files
│   │   ├── aderyn.toml
│   │   ├── Counter.sol
│   │   ├── DemoASTNodes.sol
│   │   ├── Helper.sol
│   │   ├── InconsistentUints.sol
│   │   ├── inheritance
│   │   │   ├── ExtendedInheritance.sol
│   │   │   ├── IContractInheritance.sol
│   │   │   └── InheritanceBase.sol
│   │   ├── InternalFunctions.sol
│   │   ├── lib
│   │   │   └── ThisShouldBeExcluded.sol
│   │   ├── multiple-versions
│   │   │   ├── 0.4
│   │   │   │   ├── A.sol
│   │   │   │   └── B.sol
│   │   │   ├── 0.5
│   │   │   │   ├── A.sol
│   │   │   │   └── B.sol
│   │   │   ├── 0.6
│   │   │   │   ├── A.sol
│   │   │   │   └── B.sol
│   │   │   ├── 0.7
│   │   │   │   ├── A.sol
│   │   │   │   └── B.sol
│   │   │   └── 0.8
│   │   │       ├── A.sol
│   │   │       └── B.sol
│   │   ├── OnceModifierExample.sol
│   │   └── StateVariables.sol
│   ├── ast
│   │   ├── abstract_contract.json
│   │   ├── address_payable.json
│   │   ├── array_type_name.json
│   │   ├── ast-erc4626.json
│   │   ├── base_constructor_call.json
│   │   ├── bit_not.json
│   │   ├── call.json
│   │   ├── constructor.json
│   │   ├── contract_dep_order.json
│   │   ├── do_while.json
│   │   ├── documentation_1.json
│   │   ├── documentation_2.json
│   │   ├── documentation_3.json
│   │   ├── documentation_local_variable.json
│   │   ├── documentation_on_statements.json
│   │   ├── documentation_triple.json
│   │   ├── empty_block.json
│   │   ├── enum_value_declaration.json
│   │   ├── enum_value.json
│   │   ├── event_definition.json
│   │   ├── experimental_encoder_pragma.json
│   │   ├── fallback_and_reveice_ether.json
│   │   ├── fallback_payable.json
│   │   ├── fallback.json
│   │   ├── function_type.json
│   │   ├── function.json
│   │   ├── global_enum.json
│   │   ├── global_struct.json
│   │   ├── inheritance_specifier.json
│   │   ├── leave.json
│   │   ├── license.json
│   │   ├── long_type_name_binary_operation.json
│   │   ├── long_type_name_identifier.json
│   │   ├── loop.json
│   │   ├── mappings.json
│   │   ├── modifier_definition.json
│   │   ├── modifier_invocation.json
│   │   ├── mutability.json
│   │   ├── nested_functions.json
│   │   ├── non_utf8.json
│   │   ├── override.json
│   │   ├── placeholder_statement.json
│   │   ├── receive_ether.json
│   │   ├── short_type_name_ref.json
│   │   ├── short_type_name.json
│   │   ├── slot_offset.json
│   │   ├── smoke.json
│   │   ├── source_location.json
│   │   ├── string.json
│   │   ├── stringlit.json
│   │   ├── switch_default.json
│   │   ├── switch.json
│   │   ├── try_catch.json
│   │   ├── two_base_functions.json
│   │   ├── unicode.json
│   │   ├── used_errors.json
│   │   ├── userDefinedValueType.json
│   │   ├── using_for_directive.json
│   │   ├── var_access.json
│   │   └── yul_hex_literal.json
│   ├── contract-playground
│   │   ├── .github
│   │   │   └── workflows
│   │   │       └── test.yml
│   │   ├── .gitignore
│   │   ├── dot
│   │   │   └── .gitkeep
│   │   ├── foundry.toml
│   │   ├── README.md
│   │   ├── script
│   │   │   └── Counter.s.sol
│   │   ├── src
│   │   │   ├── AbstractContract.sol
│   │   │   ├── AderynIgnoreCustomDetectors.sol
│   │   │   ├── AdminContract.sol
│   │   │   ├── ArbitraryTransferFrom.sol
│   │   │   ├── AssemblyExample.sol
│   │   │   ├── AssertStateChange.sol
│   │   │   ├── auditor_mode
│   │   │   │   ├── ExternalCalls.sol
│   │   │   │   └── PublicFunctionsWithoutSenderCheck.sol
│   │   │   ├── BooleanEquality.sol
│   │   │   ├── BuiltinSymbolShadow.sol
│   │   │   ├── CacheArrayLength.sol
│   │   │   ├── CallGraphTests.sol
│   │   │   ├── Casting.sol
│   │   │   ├── cloc
│   │   │   │   ├── AnotherHeavilyCommentedContract.sol
│   │   │   │   ├── EmptyContractFile.sol
│   │   │   │   └── HeavilyCommentedContract.sol
│   │   │   ├── CompilerBugStorageSignedIntegerArray.sol
│   │   │   ├── ConstantFuncsAssembly.sol
│   │   │   ├── ConstantsLiterals.sol
│   │   │   ├── ConstFuncChangeState.sol
│   │   │   ├── ContractLocksEther.sol
│   │   │   ├── ContractWithTodo.sol
│   │   │   ├── control_flow
│   │   │   │   └── SimpleProgram.sol
│   │   │   ├── CostlyOperationsInsideLoops.sol
│   │   │   ├── Counter.sol
│   │   │   ├── CrazyPragma.sol
│   │   │   ├── DangerousStrictEquality1.sol
│   │   │   ├── DangerousStrictEquality2.sol
│   │   │   ├── DangerousUnaryOperator.sol
│   │   │   ├── DeadCode.sol
│   │   │   ├── DelegateCallWithoutAddressCheck.sol
│   │   │   ├── DeletionNestedMappingStructureContract.sol
│   │   │   ├── DeprecatedOZFunctions.sol
│   │   │   ├── DivisionBeforeMultiplication.sol
│   │   │   ├── DynamicArrayLengthAssignment.sol
│   │   │   ├── EmitAfterExternalCall.sol
│   │   │   ├── EmptyBlocks.sol
│   │   │   ├── EnumerableSetIteration.sol
│   │   │   ├── eth2
│   │   │   │   └── DepositContract.sol
│   │   │   ├── ExperimentalEncoder.sol
│   │   │   ├── ExternalCalls.sol
│   │   │   ├── FunctionInitializingState.sol
│   │   │   ├── FunctionPointers.sol
│   │   │   ├── FunctionSignatureCollision.sol
│   │   │   ├── HugeConstants.sol
│   │   │   ├── IgnoreEverything.sol
│   │   │   ├── InconsistentUints.sol
│   │   │   ├── IncorrectCaretOperator.sol
│   │   │   ├── IncorrectERC20.sol
│   │   │   ├── IncorrectERC721.sol
│   │   │   ├── IncorrectModifier.sol
│   │   │   ├── IncorrectShift.sol
│   │   │   ├── inheritance
│   │   │   │   ├── ExtendedInheritance.sol
│   │   │   │   ├── IContractInheritance.sol
│   │   │   │   └── InheritanceBase.sol
│   │   │   ├── InternalFunctions.sol
│   │   │   ├── KeccakContract.sol
│   │   │   ├── LocalVariableShadow.sol
│   │   │   ├── MissingInheritance.sol
│   │   │   ├── MisusedBoolean.sol
│   │   │   ├── MsgValueInLoop.sol
│   │   │   ├── MultipleConstructorSchemes.sol
│   │   │   ├── MultiplePlaceholders.sol
│   │   │   ├── nested
│   │   │   │   ├── 1
│   │   │   │   │   └── Nested.sol
│   │   │   │   └── 2
│   │   │   │       └── Nested.sol
│   │   │   ├── nested_mappings
│   │   │   │   ├── LaterVersion.sol
│   │   │   │   └── NestedMappings.sol
│   │   │   ├── OnceModifierExample.sol
│   │   │   ├── OnlyLibrary.sol
│   │   │   ├── OutOfOrderRetryable.sol
│   │   │   ├── parent_chain
│   │   │   │   └── ParentChainContract.sol
│   │   │   ├── PragmaRange.sol
│   │   │   ├── PreDeclaredVarUsage.sol
│   │   │   ├── PublicFunction.sol
│   │   │   ├── PublicVariableReadInExternalContext.sol
│   │   │   ├── RedundantStatements.sol
│   │   │   ├── ReturnBomb.sol
│   │   │   ├── reused_contract_name
│   │   │   │   ├── ContractA.sol
│   │   │   │   └── ContractB.sol
│   │   │   ├── RevertsAndRequriesInLoops.sol
│   │   │   ├── router
│   │   │   │   ├── ExternalCalls.sol
│   │   │   │   ├── FallbackAndReceiveOverrides.sol
│   │   │   │   ├── InternalCalls.sol
│   │   │   │   ├── ModifierCalls.sol
│   │   │   │   └── VarOverridesFunction.sol
│   │   │   ├── RTLO.sol
│   │   │   ├── SendEtherNoChecks.sol
│   │   │   ├── SendEtherNoChecksLibImport.sol
│   │   │   ├── StateChangeAfterExternalCall.sol
│   │   │   ├── StateShadowing.sol
│   │   │   ├── StateVariableCouldBeDeclaredConstant.sol
│   │   │   ├── StateVariableCouldBeDeclaredImmutable.sol
│   │   │   ├── StateVariables.sol
│   │   │   ├── StateVariablesChangesWithoutEvents.sol
│   │   │   ├── StateVariablesManipulation.sol
│   │   │   ├── StorageConditionals.sol
│   │   │   ├── StorageParameters.sol
│   │   │   ├── T11sTranferer.sol
│   │   │   ├── TautologicalCompare.sol
│   │   │   ├── TautologyOrContradiction.sol
│   │   │   ├── TestERC20.sol
│   │   │   ├── TransientKeyword.sol
│   │   │   ├── Trump.sol
│   │   │   ├── TxOriginUsedForAuth.sol
│   │   │   ├── U2.sol
│   │   │   ├── U3.sol
│   │   │   ├── U4.sol
│   │   │   ├── U5.sol
│   │   │   ├── UncheckedCalls.sol
│   │   │   ├── UncheckedReturn.sol
│   │   │   ├── UncheckedSend.sol
│   │   │   ├── UninitializedLocalVariables.sol
│   │   │   ├── UninitializedStateVariable.sol
│   │   │   ├── uniswap
│   │   │   │   ├── UniswapV2Swapper.sol
│   │   │   │   └── UniswapV3Swapper.sol
│   │   │   ├── UnprotectedInitialize.sol
│   │   │   ├── UnsafeERC721Mint.sol
│   │   │   ├── UnusedError.sol
│   │   │   ├── UnusedImport.sol
│   │   │   ├── UnusedStateVariables.sol
│   │   │   ├── UsingSelfdestruct.sol
│   │   │   ├── VoidConstructor.sol
│   │   │   ├── WeakRandomness.sol
│   │   │   ├── WrongOrderOfLayout.sol
│   │   │   ├── YulReturn.sol
│   │   │   └── ZeroAddressCheck.sol
│   │   └── test
│   │       └── Counter.t.sol
│   ├── foundry-nft-f23
│   │   ├── .github
│   │   │   └── workflows
│   │   │       └── test.yml
│   │   ├── .gitignore
│   │   ├── foundry.lock
│   │   ├── foundry.toml
│   │   ├── README.md
│   │   ├── remappings.txt
│   │   └── src
│   │       ├── BasicNft.sol
│   │       ├── F1.sol
│   │       ├── F2.sol
│   │       ├── Initializer.sol
│   │       └── inner-core-modules
│   │           └── ICM.sol
│   ├── foundry-nft-f23-icm
│   │   ├── .github
│   │   │   └── workflows
│   │   │       └── test.yml
│   │   ├── .gitignore
│   │   ├── aderyn.toml
│   │   ├── foundry.toml
│   │   ├── README.md
│   │   ├── remappings.txt
│   │   └── src
│   │       ├── BasicNft.sol
│   │       ├── F1.sol
│   │       ├── F2.sol
│   │       ├── Initializer.sol
│   │       └── inner-core-modules
│   │           └── ICM.sol
│   ├── hardhat-js-playground
│   │   ├── .gitignore
│   │   ├── artifacts
│   │   │   ├── build-info
│   │   │   │   └── cee6fe9a9a2f03f7ff10a27ab2746af6.json
│   │   │   └── contracts
│   │   │       ├── Counter.sol
│   │   │       │   ├── Counter.dbg.json
│   │   │       │   └── Counter.json
│   │   │       ├── ExtendedInheritance.sol
│   │   │       │   ├── ExtendedInheritance.dbg.json
│   │   │       │   └── ExtendedInheritance.json
│   │   │       ├── IContractInheritance.sol
│   │   │       │   ├── IContractInheritance.dbg.json
│   │   │       │   └── IContractInheritance.json
│   │   │       ├── InheritanceBase.sol
│   │   │       │   ├── InheritanceBase.dbg.json
│   │   │       │   └── InheritanceBase.json
│   │   │       ├── KeccakContract.sol
│   │   │       │   ├── KeccakContract.dbg.json
│   │   │       │   └── KeccakContract.json
│   │   │       ├── Lock.sol
│   │   │       │   ├── Lock.dbg.json
│   │   │       │   └── Lock.json
│   │   │       └── StateVariables.sol
│   │   │           ├── StateVariables.dbg.json
│   │   │           └── StateVariables.json
│   │   ├── contracts
│   │   │   ├── Counter.sol
│   │   │   ├── ExtendedInheritance.sol
│   │   │   ├── IContractInheritance.sol
│   │   │   ├── InheritanceBase.sol
│   │   │   ├── KeccakContract.sol
│   │   │   ├── Lock.sol
│   │   │   └── StateVariables.sol
│   │   ├── hardhat.config.js
│   │   ├── package.json
│   │   ├── README.md
│   │   ├── scripts
│   │   │   └── deploy.js
│   │   ├── test
│   │   │   └── Lock.js
│   │   └── yarn.lock
│   ├── no-sol-files
│   │   ├── extra
│   │   │   └── HelloAgain.md
│   │   ├── Hello.txt
│   │   └── Hello.yul
│   └── toml
│       ├── nested_project1
│       │   ├── aderyn.toml
│       │   ├── folder1
│       │   │   └── hardhat.config.ts
│       │   ├── folder2
│       │   │   └── hardhat.config.ts
│       │   └── folder3
│       │       └── file.txt
│       └── nested_project2
│           ├── aderyn.toml
│           ├── folder1
│           │   └── foundry.toml
│           └── folder2
│               └── file1.txt
├── tools
│   └── xtask
│       ├── Cargo.toml
│       └── src
│           ├── blesspr.rs
│           ├── cut_release.rs
│           ├── flags.rs
│           ├── main.rs
│           ├── reportgen.rs
│           └── tomlgen.rs
└── typos.toml
```

# Files

--------------------------------------------------------------------------------
/benchmarks/unindexed-events/report/typical.svg:
--------------------------------------------------------------------------------

```
 1 | <svg width="960" height="540" viewBox="0 0 960 540" xmlns="http://www.w3.org/2000/svg">
 2 | <text x="480" y="32" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="16.129032258064516" opacity="1" fill="#000000">
 3 | unindexed-events:typical
 4 | </text>
 5 | <text x="27" y="263" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000" transform="rotate(270, 27, 263)">
 6 | Density (a.u.)
 7 | </text>
 8 | <text x="510" y="513" dy="-0.5ex" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
 9 | Average time (µs)
10 | </text>
11 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="86,53 86,472 "/>
12 | <text x="77" y="455" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
13 | 0.5
14 | </text>
15 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,455 86,455 "/>
16 | <text x="77" y="413" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
17 | 1
18 | </text>
19 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,413 86,413 "/>
20 | <text x="77" y="372" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
21 | 1.5
22 | </text>
23 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,372 86,372 "/>
24 | <text x="77" y="331" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
25 | 2
26 | </text>
27 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,331 86,331 "/>
28 | <text x="77" y="290" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
29 | 2.5
30 | </text>
31 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,290 86,290 "/>
32 | <text x="77" y="249" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
33 | 3
34 | </text>
35 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,249 86,249 "/>
36 | <text x="77" y="207" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
37 | 3.5
38 | </text>
39 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,207 86,207 "/>
40 | <text x="77" y="166" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
41 | 4
42 | </text>
43 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,166 86,166 "/>
44 | <text x="77" y="125" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
45 | 4.5
46 | </text>
47 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,125 86,125 "/>
48 | <text x="77" y="84" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
49 | 5
50 | </text>
51 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,84 86,84 "/>
52 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="87,473 932,473 "/>
53 | <text x="175" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
54 | 28.45
55 | </text>
56 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="175,473 175,478 "/>
57 | <text x="282" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
58 | 28.5
59 | </text>
60 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="282,473 282,478 "/>
61 | <text x="390" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
62 | 28.55
63 | </text>
64 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="390,473 390,478 "/>
65 | <text x="497" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
66 | 28.6
67 | </text>
68 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="497,473 497,478 "/>
69 | <text x="605" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
70 | 28.65
71 | </text>
72 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="605,473 605,478 "/>
73 | <text x="712" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
74 | 28.7
75 | </text>
76 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="712,473 712,478 "/>
77 | <text x="820" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
78 | 28.75
79 | </text>
80 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="820,473 820,478 "/>
81 | <polyline fill="none" opacity="1" stroke="#1F78B4" stroke-width="1" points="87,472 88,472 90,471 92,471 93,470 95,470 97,469 98,469 100,468 102,468 103,467 105,466 107,466 109,465 110,464 112,464 114,463 115,462 117,462 119,461 120,460 122,459 124,458 125,457 127,456 129,456 131,455 132,453 134,452 136,451 137,450 139,449 141,448 142,447 144,445 146,444 147,443 149,442 151,440 153,439 154,438 156,436 158,435 159,434 161,432 163,431 164,430 166,428 168,427 169,426 171,424 173,423 175,422 176,420 178,419 180,418 181,416 183,415 185,414 186,412 188,411 190,410 191,408 193,407 195,406 197,404 198,403 200,401 202,400 203,398 205,397 207,395 208,393 210,392 212,390 214,388 215,386 217,385 219,383 220,381 222,379 224,377 225,375 227,373 229,371 230,369 232,367 234,364 236,362 237,360 239,358 241,356 242,353 244,351 246,349 247,346 249,344 251,342 252,340 254,337 256,335 258,333 259,330 261,328 263,326 264,323 266,321 268,319 269,317 271,314 273,312 274,310 276,307 278,305 280,302 281,300 283,298 285,295 286,293 288,290 290,288 291,285 293,283 295,280 296,278 298,275 300,273 302,270 303,268 305,265 307,263 308,260 310,258 312,255 313,252 315,250 317,247 318,245 320,242 322,240 324,237 325,234 327,232 329,229 330,227 332,224 334,222 335,219 337,217 339,214 341,212 342,209 344,207 346,204 347,202 349,200 351,197 352,195 354,192 356,190 357,188 359,185 361,183 363,181 364,179 366,177 368,175 369,173 371,170 373,169 374,167 376,165 378,163 379,161 381,159 383,157 385,156 386,154 388,152 390,150 391,149 393,147 395,146 396,144 398,142 400,141 401,139 403,138 405,136 407,134 408,133 410,131 412,130 413,128 415,126 417,125 418,123 420,122 422,120 423,118 425,117 427,115 429,114 430,112 432,111 434,110 435,108 437,107 439,106 440,105 442,104 444,103 445,102 447,101 449,100 451,99 452,98 454,97 456,97 457,96 459,96 461,95 462,95 464,94 466,94 468,94 469,94 471,94 473,94 474,94 476,94 478,94 479,94 481,95 483,95 484,95 486,96 488,96 490,97 491,97 493,98 495,98 496,99 498,99 500,100 501,101 503,101 505,102 506,103 508,103 510,104 512,105 513,106 515,107 517,108 518,109 520,110 522,111 523,112 525,113 527,114 528,115 530,115 532,116 534,117 535,118 537,119 539,120 540,121 542,122 544,122 545,123 547,124 549,125 550,126 552,126 554,127 556,128 557,129 559,130 561,131 562,132 564,133 566,134 567,135 569,137 571,138 573,139 574,140 576,142 578,143 579,145 581,146 583,148 584,149 586,151 588,152 589,154 591,156 593,157 595,159 596,161 598,163 600,165 601,166 603,168 605,170 606,172 608,175 610,177 611,179 613,181 615,184 617,186 618,188 620,191 622,193 623,196 625,198 627,201 628,203 630,206 632,209 633,211 635,214 637,216 639,218 640,221 642,223 644,225 645,228 647,230 649,232 650,234 652,236 654,239 655,241 657,243 659,245 661,247 662,249 664,251 666,253 667,255 669,257 671,259 672,261 674,264 676,266 677,268 679,270 681,272 683,275 684,277 686,279 688,281 689,283 691,286 693,288 694,290 696,292 698,294 700,297 701,299 703,301 705,303 706,305 708,307 710,309 711,311 713,313 715,315 716,316 718,318 720,320 722,322 723,324 725,326 727,328 728,329 730,331 732,333 733,335 735,337 737,339 738,341 740,343 742,345 744,347 745,349 747,351 749,353 750,354 752,356 754,358 755,360 757,362 759,364 760,366 762,368 764,370 766,372 767,374 769,375 771,377 772,379 774,381 776,382 777,384 779,386 781,388 782,389 784,391 786,392 788,394 789,395 791,397 793,398 794,400 796,401 798,403 799,404 801,406 803,407 804,408 806,410 808,411 810,412 811,414 813,415 815,416 816,418 818,419 820,420 821,422 823,423 825,424 827,426 828,427 830,428 832,429 833,431 835,432 837,433 838,434 840,435 842,436 843,437 845,438 847,439 849,440 850,441 852,442 854,443 855,444 857,444 859,445 860,446 862,447 864,448 865,448 867,449 869,450 871,451 872,452 874,452 876,453 877,454 879,455 881,455 882,456 884,457 886,458 887,458 889,459 891,460 893,460 894,461 896,462 898,462 899,463 901,464 903,464 904,465 906,465 908,466 909,466 911,467 913,467 915,468 916,468 918,469 920,469 921,470 923,470 925,471 926,471 928,472 930,472 932,472 "/>
82 | <polygon opacity="0.25" fill="#1F78B4" points="164,430 166,428 168,427 169,426 171,424 173,423 175,422 176,420 178,419 180,418 181,416 183,415 185,414 186,412 188,411 190,410 191,408 193,407 195,406 197,404 198,403 200,401 202,400 203,398 205,397 207,395 208,393 210,392 212,390 214,388 215,386 217,385 219,383 220,381 222,379 224,377 225,375 227,373 229,371 230,369 232,367 234,364 236,362 237,360 239,358 241,356 242,353 244,351 246,349 247,346 249,344 251,342 252,340 254,337 256,335 258,333 259,330 261,328 263,326 264,323 266,321 268,319 269,317 271,314 273,312 274,310 276,307 278,305 280,302 281,300 283,298 285,295 286,293 288,290 290,288 291,285 293,283 295,280 296,278 298,275 300,273 302,270 303,268 305,265 307,263 308,260 310,258 312,255 313,252 315,250 317,247 318,245 320,242 322,240 324,237 325,234 327,232 329,229 330,227 332,224 334,222 335,219 337,217 339,214 341,212 342,209 344,207 346,204 347,202 349,200 351,197 352,195 354,192 356,190 357,188 359,185 361,183 363,181 364,179 366,177 368,175 369,173 371,170 373,169 374,167 376,165 378,163 379,161 381,159 383,157 385,156 386,154 388,152 390,150 391,149 393,147 395,146 396,144 398,142 400,141 401,139 403,138 405,136 407,134 408,133 410,131 412,130 413,128 415,126 417,125 418,123 420,122 422,120 423,118 425,117 427,115 429,114 430,112 432,111 434,110 435,108 437,107 439,106 440,105 442,104 444,103 445,102 447,101 449,100 451,99 452,98 454,97 456,97 457,96 459,96 461,95 462,95 464,94 466,94 468,94 469,94 471,94 473,94 474,94 476,94 478,94 479,94 481,95 483,95 484,95 486,96 488,96 490,97 491,97 493,98 495,98 496,99 498,99 500,100 501,101 503,101 505,102 506,103 508,103 510,104 512,105 513,106 515,107 517,108 518,109 520,110 522,111 523,112 525,113 527,114 528,115 530,115 532,116 534,117 535,118 537,119 539,120 540,121 542,122 544,122 545,123 547,124 549,125 550,126 552,126 554,127 556,128 557,129 559,130 561,131 562,132 564,133 566,134 567,135 569,137 571,138 573,139 574,140 576,142 578,143 579,145 581,146 583,148 584,149 586,151 588,152 589,154 591,156 593,157 595,159 596,161 598,163 600,165 601,166 603,168 605,170 606,172 608,175 610,177 611,179 613,181 615,184 617,186 618,188 620,191 622,193 623,196 625,198 627,201 628,203 630,206 632,209 633,211 635,214 637,216 639,218 640,221 642,223 644,225 645,228 647,230 649,232 650,234 652,236 654,239 655,241 657,243 659,245 661,247 662,249 664,251 666,253 667,255 669,257 671,259 672,261 674,264 676,266 677,268 679,270 681,272 683,275 684,277 686,279 688,281 689,283 691,286 693,288 694,290 696,292 698,294 700,297 701,299 703,301 705,303 706,305 708,307 710,309 711,311 713,313 715,315 716,316 718,318 720,320 722,322 723,324 725,326 727,328 728,329 730,331 732,333 733,335 735,337 737,339 738,341 740,343 742,345 744,347 745,349 747,351 749,353 750,354 752,356 754,358 755,360 757,362 759,364 760,366 762,368 764,370 766,372 767,374 769,375 771,377 772,379 774,381 776,382 777,384 779,386 781,388 782,389 784,391 786,392 788,394 789,395 791,397 793,398 794,400 796,401 798,403 799,404 801,406 803,407 804,408 806,410 808,411 810,412 811,414 813,415 815,416 816,418 818,419 820,420 821,422 823,423 825,424 827,426 828,427 830,428 832,429 833,431 835,432 837,433 838,434 840,435 842,436 843,437 845,438 847,439 849,440 850,441 852,442 852,473 164,473 "/>
83 | <polyline fill="none" opacity="1" stroke="#1F78B4" stroke-width="3" points="498,473 498,99 "/>
84 | <text x="798" y="68" dy="0.76em" text-anchor="start" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
85 | Bootstrap distribution
86 | </text>
87 | <text x="798" y="83" dy="0.76em" text-anchor="start" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
88 | Confidence interval
89 | </text>
90 | <text x="798" y="98" dy="0.76em" text-anchor="start" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
91 | Point estimate
92 | </text>
93 | <polyline fill="none" opacity="1" stroke="#1F78B4" stroke-width="1" points="768,73 788,73 "/>
94 | <rect x="768" y="83" width="20" height="10" opacity="0.25" fill="#1F78B4" stroke="none"/>
95 | <polyline fill="none" opacity="1" stroke="#1F78B4" stroke-width="1" points="768,103 788,103 "/>
96 | </svg>
97 | 
```

--------------------------------------------------------------------------------
/benchmarks/centralization-risk/report/SD.svg:
--------------------------------------------------------------------------------

```
 1 | <svg width="960" height="540" viewBox="0 0 960 540" xmlns="http://www.w3.org/2000/svg">
 2 | <text x="480" y="32" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="16.129032258064516" opacity="1" fill="#000000">
 3 | centralization-risk:SD
 4 | </text>
 5 | <text x="27" y="263" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000" transform="rotate(270, 27, 263)">
 6 | Density (a.u.)
 7 | </text>
 8 | <text x="510" y="513" dy="-0.5ex" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
 9 | Average time (ns)
10 | </text>
11 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="86,53 86,472 "/>
12 | <text x="77" y="452" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
13 | 5e-4
14 | </text>
15 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,452 86,452 "/>
16 | <text x="77" y="406" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
17 | 0.001
18 | </text>
19 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,406 86,406 "/>
20 | <text x="77" y="361" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
21 | 0.0015
22 | </text>
23 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,361 86,361 "/>
24 | <text x="77" y="316" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
25 | 0.002
26 | </text>
27 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,316 86,316 "/>
28 | <text x="77" y="271" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
29 | 0.0025
30 | </text>
31 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,271 86,271 "/>
32 | <text x="77" y="225" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
33 | 0.003
34 | </text>
35 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,225 86,225 "/>
36 | <text x="77" y="180" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
37 | 0.0035
38 | </text>
39 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,180 86,180 "/>
40 | <text x="77" y="135" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
41 | 0.004
42 | </text>
43 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,135 86,135 "/>
44 | <text x="77" y="89" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
45 | 0.0045
46 | </text>
47 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,89 86,89 "/>
48 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="87,473 932,473 "/>
49 | <text x="157" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
50 | 450
51 | </text>
52 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="157,473 157,478 "/>
53 | <text x="258" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
54 | 500
55 | </text>
56 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="258,473 258,478 "/>
57 | <text x="360" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
58 | 550
59 | </text>
60 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="360,473 360,478 "/>
61 | <text x="461" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
62 | 600
63 | </text>
64 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="461,473 461,478 "/>
65 | <text x="563" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
66 | 650
67 | </text>
68 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="563,473 563,478 "/>
69 | <text x="664" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
70 | 700
71 | </text>
72 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="664,473 664,478 "/>
73 | <text x="766" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
74 | 750
75 | </text>
76 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="766,473 766,478 "/>
77 | <text x="867" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
78 | 800
79 | </text>
80 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="867,473 867,478 "/>
81 | <polyline fill="none" opacity="1" stroke="#1F78B4" stroke-width="1" points="87,472 88,471 90,471 92,470 93,469 95,469 97,468 98,468 100,467 102,466 103,466 105,465 107,465 109,464 110,463 112,462 114,462 115,461 117,460 119,459 120,459 122,458 124,457 125,456 127,455 129,454 131,453 132,452 134,452 136,451 137,450 139,449 141,448 142,447 144,446 146,445 147,444 149,443 151,442 153,441 154,440 156,439 158,438 159,437 161,436 163,435 164,434 166,433 168,432 169,430 171,429 173,428 175,427 176,425 178,424 180,422 181,421 183,419 185,418 186,416 188,415 190,413 191,412 193,410 195,408 197,407 198,405 200,404 202,402 203,401 205,399 207,398 208,396 210,394 212,393 214,391 215,390 217,388 219,387 220,385 222,384 224,382 225,381 227,379 229,378 230,376 232,375 234,373 236,372 237,370 239,368 241,367 242,365 244,363 246,362 247,360 249,359 251,357 252,355 254,354 256,352 258,350 259,348 261,347 263,345 264,343 266,341 268,340 269,338 271,336 273,334 274,332 276,330 278,328 280,326 281,324 283,322 285,320 286,318 288,316 290,314 291,312 293,310 295,308 296,306 298,304 300,301 302,299 303,297 305,295 307,293 308,291 310,288 312,286 313,284 315,282 317,280 318,278 320,275 322,273 324,271 325,269 327,267 329,265 330,263 332,261 334,259 335,256 337,254 339,252 341,250 342,248 344,246 346,244 347,242 349,240 351,238 352,235 354,233 356,231 357,229 359,226 361,224 363,222 364,219 366,217 368,215 369,212 371,210 373,207 374,205 376,203 378,200 379,198 381,196 383,193 385,191 386,189 388,186 390,184 391,182 393,180 395,178 396,176 398,174 400,172 401,170 403,168 405,166 407,164 408,162 410,161 412,159 413,157 415,155 417,153 418,152 420,150 422,148 423,146 425,144 427,143 429,141 430,139 432,137 434,135 435,133 437,132 439,130 440,128 442,126 444,125 445,123 447,121 449,120 451,118 452,116 454,115 456,114 457,112 459,111 461,110 462,109 464,108 466,107 468,106 469,106 471,105 473,104 474,104 476,103 478,103 479,102 481,102 483,101 484,101 486,101 488,100 490,100 491,100 493,100 495,99 496,99 498,99 500,98 501,98 503,98 505,97 506,97 508,97 510,97 512,96 513,96 515,96 517,95 518,95 520,95 522,95 523,95 525,94 527,94 528,94 530,94 532,94 534,94 535,94 537,94 539,94 540,94 542,94 544,94 545,95 547,95 549,95 550,96 552,96 554,97 556,97 557,98 559,99 561,100 562,100 564,101 566,102 567,103 569,104 571,105 573,106 574,107 576,108 578,109 579,110 581,111 583,112 584,113 586,114 588,115 589,116 591,117 593,118 595,120 596,121 598,122 600,123 601,125 603,126 605,128 606,129 608,131 610,132 611,134 613,136 615,138 617,140 618,142 620,144 622,146 623,148 625,150 627,152 628,154 630,156 632,158 633,161 635,163 637,165 639,167 640,170 642,172 644,174 645,177 647,179 649,181 650,184 652,186 654,188 655,191 657,193 659,196 661,198 662,200 664,203 666,205 667,208 669,210 671,212 672,215 674,217 676,219 677,222 679,224 681,226 683,228 684,230 686,232 688,234 689,236 691,239 693,241 694,243 696,245 698,247 700,249 701,251 703,253 705,255 706,257 708,259 710,261 711,263 713,265 715,268 716,270 718,272 720,274 722,277 723,279 725,281 727,284 728,286 730,288 732,290 733,293 735,295 737,297 738,300 740,302 742,304 744,306 745,308 747,311 749,313 750,315 752,317 754,319 755,321 757,324 759,326 760,328 762,330 764,332 766,335 767,337 769,339 771,341 772,344 774,346 776,348 777,351 779,353 781,355 782,357 784,360 786,362 788,364 789,366 791,368 793,370 794,372 796,374 798,376 799,378 801,380 803,382 804,383 806,385 808,387 810,388 811,390 813,391 815,393 816,394 818,396 820,397 821,399 823,400 825,402 827,403 828,405 830,406 832,408 833,409 835,411 837,412 838,414 840,415 842,417 843,418 845,420 847,421 849,423 850,424 852,425 854,427 855,428 857,430 859,431 860,432 862,434 864,435 865,436 867,437 869,439 871,440 872,441 874,442 876,443 877,445 879,446 881,447 882,448 884,449 886,450 887,451 889,452 891,453 893,454 894,455 896,456 898,457 899,458 901,459 903,460 904,461 906,462 908,463 909,464 911,465 913,465 915,466 916,467 918,468 920,468 921,469 923,470 925,470 926,471 928,471 930,472 932,472 "/>
82 | <polygon opacity="0.25" fill="#1F78B4" points="164,434 166,433 168,432 169,430 171,429 173,428 175,427 176,425 178,424 180,422 181,421 183,419 185,418 186,416 188,415 190,413 191,412 193,410 195,408 197,407 198,405 200,404 202,402 203,401 205,399 207,398 208,396 210,394 212,393 214,391 215,390 217,388 219,387 220,385 222,384 224,382 225,381 227,379 229,378 230,376 232,375 234,373 236,372 237,370 239,368 241,367 242,365 244,363 246,362 247,360 249,359 251,357 252,355 254,354 256,352 258,350 259,348 261,347 263,345 264,343 266,341 268,340 269,338 271,336 273,334 274,332 276,330 278,328 280,326 281,324 283,322 285,320 286,318 288,316 290,314 291,312 293,310 295,308 296,306 298,304 300,301 302,299 303,297 305,295 307,293 308,291 310,288 312,286 313,284 315,282 317,280 318,278 320,275 322,273 324,271 325,269 327,267 329,265 330,263 332,261 334,259 335,256 337,254 339,252 341,250 342,248 344,246 346,244 347,242 349,240 351,238 352,235 354,233 356,231 357,229 359,226 361,224 363,222 364,219 366,217 368,215 369,212 371,210 373,207 374,205 376,203 378,200 379,198 381,196 383,193 385,191 386,189 388,186 390,184 391,182 393,180 395,178 396,176 398,174 400,172 401,170 403,168 405,166 407,164 408,162 410,161 412,159 413,157 415,155 417,153 418,152 420,150 422,148 423,146 425,144 427,143 429,141 430,139 432,137 434,135 435,133 437,132 439,130 440,128 442,126 444,125 445,123 447,121 449,120 451,118 452,116 454,115 456,114 457,112 459,111 461,110 462,109 464,108 466,107 468,106 469,106 471,105 473,104 474,104 476,103 478,103 479,102 481,102 483,101 484,101 486,101 488,100 490,100 491,100 493,100 495,99 496,99 498,99 500,98 501,98 503,98 505,97 506,97 508,97 510,97 512,96 513,96 515,96 517,95 518,95 520,95 522,95 523,95 525,94 527,94 528,94 530,94 532,94 534,94 535,94 537,94 539,94 540,94 542,94 544,94 545,95 547,95 549,95 550,96 552,96 554,97 556,97 557,98 559,99 561,100 562,100 564,101 566,102 567,103 569,104 571,105 573,106 574,107 576,108 578,109 579,110 581,111 583,112 584,113 586,114 588,115 589,116 591,117 593,118 595,120 596,121 598,122 600,123 601,125 603,126 605,128 606,129 608,131 610,132 611,134 613,136 615,138 617,140 618,142 620,144 622,146 623,148 625,150 627,152 628,154 630,156 632,158 633,161 635,163 637,165 639,167 640,170 642,172 644,174 645,177 647,179 649,181 650,184 652,186 654,188 655,191 657,193 659,196 661,198 662,200 664,203 666,205 667,208 669,210 671,212 672,215 674,217 676,219 677,222 679,224 681,226 683,228 684,230 686,232 688,234 689,236 691,239 693,241 694,243 696,245 698,247 700,249 701,251 703,253 705,255 706,257 708,259 710,261 711,263 713,265 715,268 716,270 718,272 720,274 722,277 723,279 725,281 727,284 728,286 730,288 732,290 733,293 735,295 737,297 738,300 740,302 742,304 744,306 745,308 747,311 749,313 750,315 752,317 754,319 755,321 757,324 759,326 760,328 762,330 764,332 766,335 767,337 769,339 771,341 772,344 774,346 776,348 777,351 779,353 781,355 782,357 784,360 786,362 788,364 789,366 791,368 793,370 794,372 796,374 798,376 799,378 801,380 803,382 804,383 806,385 808,387 810,388 811,390 813,391 815,393 816,394 818,396 820,397 821,399 823,400 825,402 827,403 828,405 830,406 832,408 833,409 835,411 837,412 838,414 840,415 842,417 843,418 845,420 847,421 849,423 850,424 852,425 852,473 164,473 "/>
83 | <polyline fill="none" opacity="1" stroke="#1F78B4" stroke-width="3" points="534,473 534,94 "/>
84 | <text x="798" y="68" dy="0.76em" text-anchor="start" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
85 | Bootstrap distribution
86 | </text>
87 | <text x="798" y="83" dy="0.76em" text-anchor="start" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
88 | Confidence interval
89 | </text>
90 | <text x="798" y="98" dy="0.76em" text-anchor="start" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
91 | Point estimate
92 | </text>
93 | <polyline fill="none" opacity="1" stroke="#1F78B4" stroke-width="1" points="768,73 788,73 "/>
94 | <rect x="768" y="83" width="20" height="10" opacity="0.25" fill="#1F78B4" stroke="none"/>
95 | <polyline fill="none" opacity="1" stroke="#1F78B4" stroke-width="1" points="768,103 788,103 "/>
96 | </svg>
97 | 
```

--------------------------------------------------------------------------------
/benchmarks/ecrecover/report/SD.svg:
--------------------------------------------------------------------------------

```
 1 | <svg width="960" height="540" viewBox="0 0 960 540" xmlns="http://www.w3.org/2000/svg">
 2 | <text x="480" y="32" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="16.129032258064516" opacity="1" fill="#000000">
 3 | ecrecover:SD
 4 | </text>
 5 | <text x="27" y="263" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000" transform="rotate(270, 27, 263)">
 6 | Density (a.u.)
 7 | </text>
 8 | <text x="510" y="513" dy="-0.5ex" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
 9 | Average time (µs)
10 | </text>
11 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="86,53 86,472 "/>
12 | <text x="77" y="432" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
13 | 0.2
14 | </text>
15 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,432 86,432 "/>
16 | <text x="77" y="391" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
17 | 0.4
18 | </text>
19 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,391 86,391 "/>
20 | <text x="77" y="350" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
21 | 0.6
22 | </text>
23 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,350 86,350 "/>
24 | <text x="77" y="309" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
25 | 0.8
26 | </text>
27 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,309 86,309 "/>
28 | <text x="77" y="267" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
29 | 1
30 | </text>
31 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,267 86,267 "/>
32 | <text x="77" y="226" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
33 | 1.2
34 | </text>
35 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,226 86,226 "/>
36 | <text x="77" y="185" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
37 | 1.4
38 | </text>
39 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,185 86,185 "/>
40 | <text x="77" y="144" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
41 | 1.6
42 | </text>
43 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,144 86,144 "/>
44 | <text x="77" y="103" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
45 | 1.8
46 | </text>
47 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,103 86,103 "/>
48 | <text x="77" y="62" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
49 | 2
50 | </text>
51 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,62 86,62 "/>
52 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="87,473 932,473 "/>
53 | <text x="156" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
54 | 0.2
55 | </text>
56 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="156,473 156,478 "/>
57 | <text x="283" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
58 | 0.4
59 | </text>
60 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="283,473 283,478 "/>
61 | <text x="411" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
62 | 0.6
63 | </text>
64 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="411,473 411,478 "/>
65 | <text x="538" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
66 | 0.8
67 | </text>
68 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="538,473 538,478 "/>
69 | <text x="666" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
70 | 1
71 | </text>
72 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="666,473 666,478 "/>
73 | <text x="793" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
74 | 1.2
75 | </text>
76 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="793,473 793,478 "/>
77 | <text x="920" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
78 | 1.4
79 | </text>
80 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="920,473 920,478 "/>
81 | <polyline fill="none" opacity="1" stroke="#1F78B4" stroke-width="1" points="87,472 88,472 90,472 92,472 93,472 95,471 97,471 98,470 100,470 102,469 103,468 105,467 107,466 109,465 110,464 112,462 114,460 115,458 117,455 119,453 120,450 122,446 124,442 125,438 127,434 129,429 131,423 132,418 134,412 136,405 137,398 139,391 141,383 142,375 144,367 146,359 147,350 149,342 151,333 153,324 154,315 156,307 158,298 159,290 161,282 163,275 164,268 166,262 168,256 169,250 171,246 173,242 175,239 176,236 178,235 180,234 181,234 183,235 185,237 186,240 188,243 190,247 191,252 193,257 195,263 197,269 198,276 200,283 202,291 203,299 205,307 207,315 208,324 210,332 212,340 214,349 215,357 217,364 219,372 220,379 222,386 224,393 225,399 227,405 229,411 230,415 232,420 234,424 236,427 237,430 239,432 241,434 242,435 244,435 246,435 247,433 249,431 251,429 252,425 254,421 256,415 258,409 259,402 261,394 263,385 264,376 266,365 268,354 269,342 271,330 273,317 274,303 276,290 278,276 280,263 281,250 283,237 285,225 286,213 288,203 290,193 291,185 293,178 295,173 296,169 298,166 300,166 302,167 303,169 305,173 307,179 308,186 310,194 312,203 313,213 315,224 317,236 318,248 320,260 322,272 324,284 325,296 327,308 329,319 330,329 332,338 334,347 335,354 337,361 339,366 341,370 342,373 344,375 346,376 347,376 349,375 351,373 352,370 354,366 356,362 357,357 359,352 361,347 363,342 364,336 366,331 368,326 369,322 371,318 373,315 374,312 376,310 378,309 379,309 381,310 383,312 385,314 386,317 388,321 390,326 391,331 393,336 395,342 396,348 398,354 400,360 401,367 403,373 405,378 407,384 408,389 410,393 412,397 413,401 415,404 417,406 418,408 420,410 422,411 423,411 425,412 427,411 429,411 430,410 432,408 434,407 435,405 437,403 439,401 440,398 442,395 444,392 445,388 447,384 449,379 451,373 452,367 454,361 456,353 457,345 459,336 461,326 462,315 464,303 466,291 468,277 469,264 471,250 473,235 474,221 476,206 478,192 479,178 481,165 483,153 484,141 486,131 488,122 490,115 491,108 493,104 495,100 496,98 498,97 500,97 501,98 503,100 505,103 506,106 508,109 510,111 512,114 513,116 515,118 517,119 518,119 520,119 522,118 523,116 525,114 527,111 528,108 530,104 532,101 534,98 535,96 537,93 539,92 540,92 542,92 544,94 545,96 547,99 549,104 550,109 552,116 554,122 556,130 557,138 559,146 561,155 562,163 564,171 566,179 567,187 569,195 571,202 573,208 574,215 576,221 578,226 579,232 581,237 583,242 584,247 586,252 588,257 589,262 591,267 593,273 595,278 596,284 598,290 600,296 601,302 603,308 605,313 606,319 608,324 610,329 611,334 613,338 615,342 617,345 618,348 620,350 622,352 623,352 625,353 627,352 628,351 630,349 632,347 633,344 635,340 637,336 639,331 640,326 642,320 644,314 645,308 647,302 649,295 650,289 652,282 654,275 655,269 657,263 659,257 661,252 662,247 664,242 666,238 667,234 669,231 671,228 672,226 674,224 676,222 677,220 679,219 681,219 683,218 684,218 686,218 688,218 689,219 691,219 693,221 694,222 696,224 698,226 700,228 701,231 703,234 705,238 706,242 708,246 710,250 711,255 713,260 715,265 716,271 718,276 720,282 722,288 723,294 725,299 727,305 728,311 730,317 732,322 733,328 735,333 737,339 738,344 740,349 742,354 744,358 745,363 747,367 749,371 750,375 752,379 754,382 755,385 757,387 759,390 760,392 762,393 764,395 766,396 767,396 769,397 771,397 772,396 774,396 776,395 777,394 779,393 781,391 782,389 784,388 786,386 788,384 789,383 791,381 793,379 794,377 796,376 798,375 799,373 801,372 803,371 804,371 806,370 808,370 810,370 811,370 813,370 815,370 816,371 818,372 820,373 821,374 823,375 825,377 827,378 828,380 830,382 832,384 833,386 835,389 837,391 838,393 840,396 842,398 843,401 845,403 847,406 849,409 850,411 852,414 854,416 855,419 857,421 859,423 860,425 862,428 864,430 865,432 867,433 869,435 871,437 872,438 874,439 876,440 877,441 879,442 881,443 882,444 884,444 886,445 887,445 889,445 891,445 893,446 894,445 896,445 898,445 899,445 901,445 903,445 904,444 906,444 908,444 909,444 911,444 913,444 915,444 916,444 918,444 920,444 921,444 923,444 925,445 926,445 928,445 930,446 932,446 "/>
82 | <polygon opacity="0.25" fill="#1F78B4" points="164,268 166,262 168,256 169,250 171,246 173,242 175,239 176,236 178,235 180,234 181,234 183,235 185,237 186,240 188,243 190,247 191,252 193,257 195,263 197,269 198,276 200,283 202,291 203,299 205,307 207,315 208,324 210,332 212,340 214,349 215,357 217,364 219,372 220,379 222,386 224,393 225,399 227,405 229,411 230,415 232,420 234,424 236,427 237,430 239,432 241,434 242,435 244,435 246,435 247,433 249,431 251,429 252,425 254,421 256,415 258,409 259,402 261,394 263,385 264,376 266,365 268,354 269,342 271,330 273,317 274,303 276,290 278,276 280,263 281,250 283,237 285,225 286,213 288,203 290,193 291,185 293,178 295,173 296,169 298,166 300,166 302,167 303,169 305,173 307,179 308,186 310,194 312,203 313,213 315,224 317,236 318,248 320,260 322,272 324,284 325,296 327,308 329,319 330,329 332,338 334,347 335,354 337,361 339,366 341,370 342,373 344,375 346,376 347,376 349,375 351,373 352,370 354,366 356,362 357,357 359,352 361,347 363,342 364,336 366,331 368,326 369,322 371,318 373,315 374,312 376,310 378,309 379,309 381,310 383,312 385,314 386,317 388,321 390,326 391,331 393,336 395,342 396,348 398,354 400,360 401,367 403,373 405,378 407,384 408,389 410,393 412,397 413,401 415,404 417,406 418,408 420,410 422,411 423,411 425,412 427,411 429,411 430,410 432,408 434,407 435,405 437,403 439,401 440,398 442,395 444,392 445,388 447,384 449,379 451,373 452,367 454,361 456,353 457,345 459,336 461,326 462,315 464,303 466,291 468,277 469,264 471,250 473,235 474,221 476,206 478,192 479,178 481,165 483,153 484,141 486,131 488,122 490,115 491,108 493,104 495,100 496,98 498,97 500,97 501,98 503,100 505,103 506,106 508,109 510,111 512,114 513,116 515,118 517,119 518,119 520,119 522,118 523,116 525,114 527,111 528,108 530,104 532,101 534,98 535,96 537,93 539,92 540,92 542,92 544,94 545,96 547,99 549,104 550,109 552,116 554,122 556,130 557,138 559,146 561,155 562,163 564,171 566,179 567,187 569,195 571,202 573,208 574,215 576,221 578,226 579,232 581,237 583,242 584,247 586,252 588,257 589,262 591,267 593,273 595,278 596,284 598,290 600,296 601,302 603,308 605,313 606,319 608,324 610,329 611,334 613,338 615,342 617,345 618,348 620,350 622,352 623,352 625,353 627,352 628,351 630,349 632,347 633,344 635,340 637,336 639,331 640,326 642,320 644,314 645,308 647,302 649,295 650,289 652,282 654,275 655,269 657,263 659,257 661,252 662,247 664,242 666,238 667,234 669,231 671,228 672,226 674,224 676,222 677,220 679,219 681,219 683,218 684,218 686,218 688,218 689,219 691,219 693,221 694,222 696,224 698,226 700,228 701,231 703,234 705,238 706,242 708,246 710,250 711,255 713,260 715,265 716,271 718,276 720,282 722,288 723,294 725,299 727,305 728,311 730,317 732,322 733,328 735,333 737,339 738,344 740,349 742,354 744,358 745,363 747,367 749,371 750,375 752,379 754,382 755,385 757,387 759,390 760,392 762,393 764,395 766,396 767,396 769,397 771,397 772,396 774,396 776,395 777,394 779,393 781,391 782,389 784,388 786,386 788,384 789,383 791,381 793,379 794,377 796,376 798,375 799,373 801,372 803,371 804,371 806,370 808,370 810,370 811,370 813,370 815,370 816,371 818,372 820,373 821,374 823,375 825,377 827,378 828,380 830,382 832,384 833,386 835,389 837,391 838,393 840,396 842,398 843,401 845,403 847,406 849,409 850,411 852,414 852,473 164,473 "/>
83 | <polyline fill="none" opacity="1" stroke="#1F78B4" stroke-width="3" points="543,473 543,93 "/>
84 | <text x="798" y="68" dy="0.76em" text-anchor="start" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
85 | Bootstrap distribution
86 | </text>
87 | <text x="798" y="83" dy="0.76em" text-anchor="start" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
88 | Confidence interval
89 | </text>
90 | <text x="798" y="98" dy="0.76em" text-anchor="start" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
91 | Point estimate
92 | </text>
93 | <polyline fill="none" opacity="1" stroke="#1F78B4" stroke-width="1" points="768,73 788,73 "/>
94 | <rect x="768" y="83" width="20" height="10" opacity="0.25" fill="#1F78B4" stroke="none"/>
95 | <polyline fill="none" opacity="1" stroke="#1F78B4" stroke-width="1" points="768,103 788,103 "/>
96 | </svg>
97 | 
```

--------------------------------------------------------------------------------
/benchmarks/unsafe-erc20-functions/report/MAD.svg:
--------------------------------------------------------------------------------

```
 1 | <svg width="960" height="540" viewBox="0 0 960 540" xmlns="http://www.w3.org/2000/svg">
 2 | <text x="480" y="32" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="16.129032258064516" opacity="1" fill="#000000">
 3 | unsafe-erc20-functions:MAD
 4 | </text>
 5 | <text x="27" y="263" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000" transform="rotate(270, 27, 263)">
 6 | Density (a.u.)
 7 | </text>
 8 | <text x="510" y="513" dy="-0.5ex" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
 9 | Average time (µs)
10 | </text>
11 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="86,53 86,472 "/>
12 | <text x="77" y="440" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
13 | 0.2
14 | </text>
15 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,440 86,440 "/>
16 | <text x="77" y="394" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
17 | 0.4
18 | </text>
19 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,394 86,394 "/>
20 | <text x="77" y="349" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
21 | 0.6
22 | </text>
23 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,349 86,349 "/>
24 | <text x="77" y="303" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
25 | 0.8
26 | </text>
27 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,303 86,303 "/>
28 | <text x="77" y="257" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
29 | 1
30 | </text>
31 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,257 86,257 "/>
32 | <text x="77" y="211" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
33 | 1.2
34 | </text>
35 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,211 86,211 "/>
36 | <text x="77" y="165" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
37 | 1.4
38 | </text>
39 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,165 86,165 "/>
40 | <text x="77" y="119" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
41 | 1.6
42 | </text>
43 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,119 86,119 "/>
44 | <text x="77" y="74" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
45 | 1.8
46 | </text>
47 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,74 86,74 "/>
48 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="87,473 932,473 "/>
49 | <text x="90" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
50 | 1.2
51 | </text>
52 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="90,473 90,478 "/>
53 | <text x="206" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
54 | 1.4
55 | </text>
56 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="206,473 206,478 "/>
57 | <text x="322" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
58 | 1.6
59 | </text>
60 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="322,473 322,478 "/>
61 | <text x="439" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
62 | 1.8
63 | </text>
64 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="439,473 439,478 "/>
65 | <text x="555" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
66 | 2
67 | </text>
68 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="555,473 555,478 "/>
69 | <text x="672" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
70 | 2.2
71 | </text>
72 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="672,473 672,478 "/>
73 | <text x="788" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
74 | 2.4
75 | </text>
76 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="788,473 788,478 "/>
77 | <text x="904" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
78 | 2.6
79 | </text>
80 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="904,473 904,478 "/>
81 | <polyline fill="none" opacity="1" stroke="#1F78B4" stroke-width="1" points="87,472 88,472 90,471 92,470 93,469 95,469 97,468 98,467 100,466 102,465 103,464 105,463 107,462 109,461 110,461 112,460 114,458 115,457 117,456 119,455 120,454 122,453 124,451 125,450 127,448 129,447 131,445 132,443 134,441 136,439 137,437 139,435 141,433 142,431 144,428 146,426 147,424 149,421 151,419 153,416 154,414 156,411 158,409 159,406 161,404 163,401 164,399 166,396 168,393 169,391 171,388 173,385 175,382 176,379 178,376 180,373 181,369 183,366 185,362 186,359 188,355 190,351 191,347 193,343 195,338 197,334 198,329 200,325 202,320 203,316 205,311 207,307 208,303 210,298 212,294 214,290 215,286 217,283 219,279 220,276 222,272 224,269 225,266 227,263 229,261 230,258 232,255 234,253 236,250 237,247 239,245 241,242 242,239 244,236 246,233 247,230 249,227 251,223 252,220 254,217 256,213 258,210 259,206 261,203 263,200 264,197 266,194 268,191 269,188 271,185 273,183 274,181 276,179 278,177 280,175 281,173 283,172 285,170 286,169 288,167 290,165 291,164 293,162 295,160 296,158 298,156 300,154 302,152 303,149 305,146 307,143 308,140 310,137 312,134 313,131 315,127 317,124 318,121 320,118 322,115 324,112 325,110 327,107 329,105 330,103 332,101 334,100 335,98 337,97 339,96 341,95 342,94 344,94 346,93 347,93 349,93 351,93 352,93 354,93 356,94 357,95 359,95 361,97 363,98 364,100 366,102 368,104 369,106 371,109 373,112 374,115 376,118 378,121 379,125 381,128 383,131 385,135 386,138 388,142 390,145 391,148 393,150 395,153 396,155 398,158 400,160 401,162 403,163 405,165 407,166 408,168 410,169 412,170 413,171 415,173 417,174 418,175 420,177 422,179 423,181 425,182 427,185 429,187 430,189 432,191 434,194 435,196 437,199 439,201 440,204 442,206 444,208 445,210 447,212 449,214 451,215 452,217 454,218 456,219 457,220 459,220 461,221 462,221 464,222 466,223 468,223 469,224 471,225 473,226 474,228 476,229 478,231 479,234 481,236 483,239 484,242 486,246 488,250 490,254 491,259 493,263 495,268 496,273 498,278 500,283 501,288 503,293 505,297 506,302 508,307 510,311 512,315 513,319 515,323 517,326 518,330 520,333 522,335 523,338 525,341 527,343 528,345 530,347 532,348 534,350 535,352 537,353 539,355 540,356 542,357 544,359 545,360 547,361 549,363 550,364 552,365 554,367 556,368 557,369 559,371 561,372 562,373 564,374 566,375 567,376 569,377 571,378 573,379 574,380 576,380 578,381 579,381 581,382 583,382 584,383 586,383 588,383 589,384 591,384 593,384 595,385 596,385 598,386 600,386 601,387 603,387 605,388 606,389 608,389 610,390 611,391 613,392 615,392 617,393 618,394 620,395 622,396 623,397 625,397 627,398 628,399 630,399 632,400 633,400 635,400 637,401 639,401 640,401 642,401 644,402 645,402 647,402 649,402 650,402 652,402 654,402 655,403 657,403 659,403 661,404 662,404 664,404 666,405 667,405 669,406 671,406 672,406 674,407 676,407 677,408 679,408 681,408 683,408 684,408 686,408 688,408 689,408 691,408 693,407 694,407 696,407 698,406 700,406 701,405 703,405 705,404 706,404 708,403 710,403 711,402 713,402 715,402 716,402 718,401 720,401 722,401 723,401 725,401 727,401 728,401 730,401 732,401 733,401 735,402 737,402 738,402 740,403 742,403 744,403 745,404 747,404 749,404 750,405 752,405 754,405 755,406 757,406 759,406 760,407 762,407 764,408 766,408 767,409 769,409 771,410 772,411 774,411 776,412 777,413 779,414 781,415 782,416 784,417 786,418 788,419 789,420 791,422 793,423 794,424 796,425 798,427 799,428 801,429 803,430 804,431 806,432 808,433 810,434 811,435 813,436 815,437 816,438 818,438 820,439 821,440 823,440 825,441 827,442 828,442 830,443 832,444 833,444 835,445 837,445 838,446 840,447 842,447 843,448 845,448 847,449 849,450 850,450 852,451 854,451 855,452 857,453 859,453 860,454 862,454 864,455 865,456 867,456 869,457 871,457 872,458 874,458 876,459 877,459 879,460 881,460 882,461 884,461 886,461 887,462 889,462 891,462 893,463 894,463 896,463 898,463 899,464 901,464 903,464 904,464 906,465 908,465 909,465 911,465 913,466 915,466 916,466 918,467 920,467 921,467 923,468 925,468 926,468 928,469 930,469 932,469 "/>
82 | <polygon opacity="0.25" fill="#1F78B4" points="164,399 166,396 168,393 169,391 171,388 173,385 175,382 176,379 178,376 180,373 181,369 183,366 185,362 186,359 188,355 190,351 191,347 193,343 195,338 197,334 198,329 200,325 202,320 203,316 205,311 207,307 208,303 210,298 212,294 214,290 215,286 217,283 219,279 220,276 222,272 224,269 225,266 227,263 229,261 230,258 232,255 234,253 236,250 237,247 239,245 241,242 242,239 244,236 246,233 247,230 249,227 251,223 252,220 254,217 256,213 258,210 259,206 261,203 263,200 264,197 266,194 268,191 269,188 271,185 273,183 274,181 276,179 278,177 280,175 281,173 283,172 285,170 286,169 288,167 290,165 291,164 293,162 295,160 296,158 298,156 300,154 302,152 303,149 305,146 307,143 308,140 310,137 312,134 313,131 315,127 317,124 318,121 320,118 322,115 324,112 325,110 327,107 329,105 330,103 332,101 334,100 335,98 337,97 339,96 341,95 342,94 344,94 346,93 347,93 349,93 351,93 352,93 354,93 356,94 357,95 359,95 361,97 363,98 364,100 366,102 368,104 369,106 371,109 373,112 374,115 376,118 378,121 379,125 381,128 383,131 385,135 386,138 388,142 390,145 391,148 393,150 395,153 396,155 398,158 400,160 401,162 403,163 405,165 407,166 408,168 410,169 412,170 413,171 415,173 417,174 418,175 420,177 422,179 423,181 425,182 427,185 429,187 430,189 432,191 434,194 435,196 437,199 439,201 440,204 442,206 444,208 445,210 447,212 449,214 451,215 452,217 454,218 456,219 457,220 459,220 461,221 462,221 464,222 466,223 468,223 469,224 471,225 473,226 474,228 476,229 478,231 479,234 481,236 483,239 484,242 486,246 488,250 490,254 491,259 493,263 495,268 496,273 498,278 500,283 501,288 503,293 505,297 506,302 508,307 510,311 512,315 513,319 515,323 517,326 518,330 520,333 522,335 523,338 525,341 527,343 528,345 530,347 532,348 534,350 535,352 537,353 539,355 540,356 542,357 544,359 545,360 547,361 549,363 550,364 552,365 554,367 556,368 557,369 559,371 561,372 562,373 564,374 566,375 567,376 569,377 571,378 573,379 574,380 576,380 578,381 579,381 581,382 583,382 584,383 586,383 588,383 589,384 591,384 593,384 595,385 596,385 598,386 600,386 601,387 603,387 605,388 606,389 608,389 610,390 611,391 613,392 615,392 617,393 618,394 620,395 622,396 623,397 625,397 627,398 628,399 630,399 632,400 633,400 635,400 637,401 639,401 640,401 642,401 644,402 645,402 647,402 649,402 650,402 652,402 654,402 655,403 657,403 659,403 661,404 662,404 664,404 666,405 667,405 669,406 671,406 672,406 674,407 676,407 677,408 679,408 681,408 683,408 684,408 686,408 688,408 689,408 691,408 693,407 694,407 696,407 698,406 700,406 701,405 703,405 705,404 706,404 708,403 710,403 711,402 713,402 715,402 716,402 718,401 720,401 722,401 723,401 725,401 727,401 728,401 730,401 732,401 733,401 735,402 737,402 738,402 740,403 742,403 744,403 745,404 747,404 749,404 750,405 752,405 754,405 755,406 757,406 759,406 760,407 762,407 764,408 766,408 767,409 769,409 771,410 772,411 774,411 776,412 777,413 779,414 781,415 782,416 784,417 786,418 788,419 789,420 791,422 793,423 794,424 796,425 798,427 799,428 801,429 803,430 804,431 806,432 808,433 810,434 811,435 813,436 815,437 816,438 818,438 820,439 821,440 823,440 825,441 827,442 828,442 830,443 832,444 833,444 835,445 837,445 838,446 840,447 842,447 843,448 845,448 847,449 849,450 850,450 852,451 852,473 164,473 "/>
83 | <polyline fill="none" opacity="1" stroke="#1F78B4" stroke-width="3" points="364,473 364,99 "/>
84 | <text x="798" y="68" dy="0.76em" text-anchor="start" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
85 | Bootstrap distribution
86 | </text>
87 | <text x="798" y="83" dy="0.76em" text-anchor="start" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
88 | Confidence interval
89 | </text>
90 | <text x="798" y="98" dy="0.76em" text-anchor="start" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
91 | Point estimate
92 | </text>
93 | <polyline fill="none" opacity="1" stroke="#1F78B4" stroke-width="1" points="768,73 788,73 "/>
94 | <rect x="768" y="83" width="20" height="10" opacity="0.25" fill="#1F78B4" stroke="none"/>
95 | <polyline fill="none" opacity="1" stroke="#1F78B4" stroke-width="1" points="768,103 788,103 "/>
96 | </svg>
97 | 
```

--------------------------------------------------------------------------------
/benchmarks/ecrecover/report/median.svg:
--------------------------------------------------------------------------------

```
 1 | <svg width="960" height="540" viewBox="0 0 960 540" xmlns="http://www.w3.org/2000/svg">
 2 | <text x="480" y="32" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="16.129032258064516" opacity="1" fill="#000000">
 3 | ecrecover:median
 4 | </text>
 5 | <text x="27" y="263" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000" transform="rotate(270, 27, 263)">
 6 | Density (a.u.)
 7 | </text>
 8 | <text x="510" y="513" dy="-0.5ex" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
 9 | Average time (µs)
10 | </text>
11 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="86,53 86,472 "/>
12 | <text x="77" y="438" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
13 | 2
14 | </text>
15 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,438 86,438 "/>
16 | <text x="77" y="395" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
17 | 4
18 | </text>
19 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,395 86,395 "/>
20 | <text x="77" y="352" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
21 | 6
22 | </text>
23 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,352 86,352 "/>
24 | <text x="77" y="309" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
25 | 8
26 | </text>
27 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,309 86,309 "/>
28 | <text x="77" y="266" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
29 | 10
30 | </text>
31 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,266 86,266 "/>
32 | <text x="77" y="223" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
33 | 12
34 | </text>
35 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,223 86,223 "/>
36 | <text x="77" y="179" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
37 | 14
38 | </text>
39 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,179 86,179 "/>
40 | <text x="77" y="136" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
41 | 16
42 | </text>
43 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,136 86,136 "/>
44 | <text x="77" y="93" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
45 | 18
46 | </text>
47 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,93 86,93 "/>
48 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="87,473 932,473 "/>
49 | <text x="161" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
50 | 4.98
51 | </text>
52 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="161,473 161,478 "/>
53 | <text x="265" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
54 | 5
55 | </text>
56 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="265,473 265,478 "/>
57 | <text x="369" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
58 | 5.02
59 | </text>
60 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="369,473 369,478 "/>
61 | <text x="473" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
62 | 5.04
63 | </text>
64 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="473,473 473,478 "/>
65 | <text x="577" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
66 | 5.06
67 | </text>
68 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="577,473 577,478 "/>
69 | <text x="681" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
70 | 5.08
71 | </text>
72 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="681,473 681,478 "/>
73 | <text x="785" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
74 | 5.1
75 | </text>
76 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="785,473 785,478 "/>
77 | <text x="889" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
78 | 5.12
79 | </text>
80 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="889,473 889,478 "/>
81 | <polyline fill="none" opacity="1" stroke="#1F78B4" stroke-width="1" points="87,462 88,462 90,461 92,461 93,461 95,461 97,461 98,461 100,460 102,460 103,460 105,460 107,459 109,459 110,459 112,458 114,458 115,458 117,458 119,457 120,457 122,457 124,457 125,456 127,456 129,456 131,456 132,455 134,455 136,455 137,455 139,455 141,455 142,455 144,455 146,455 147,455 149,455 151,456 153,456 154,457 156,457 158,458 159,458 161,459 163,460 164,461 166,462 168,462 169,463 171,464 173,465 175,466 176,467 178,468 180,469 181,470 183,470 185,471 186,471 188,471 190,472 191,472 193,472 195,472 197,471 198,471 200,470 202,470 203,469 205,468 207,467 208,467 210,466 212,465 214,464 215,463 217,462 219,461 220,461 222,460 224,460 225,460 227,460 229,460 230,460 232,460 234,461 236,461 237,462 239,462 241,463 242,464 244,465 246,465 247,466 249,466 251,467 252,467 254,467 256,467 258,467 259,466 261,466 263,465 264,465 266,464 268,463 269,462 271,461 273,460 274,459 276,458 278,457 280,456 281,456 283,455 285,454 286,454 288,454 290,454 291,454 293,454 295,454 296,455 298,455 300,456 302,457 303,458 305,458 307,459 308,460 310,460 312,461 313,461 315,461 317,460 318,460 320,459 322,459 324,458 325,456 327,455 329,454 330,452 332,451 334,450 335,448 337,447 339,446 341,446 342,445 344,445 346,445 347,445 349,445 351,445 352,446 354,446 356,447 357,447 359,447 361,447 363,446 364,446 366,445 368,443 369,441 371,439 373,436 374,433 376,430 378,427 379,423 381,419 383,415 385,411 386,407 388,404 390,400 391,397 393,395 395,393 396,391 398,390 400,389 401,389 403,389 405,390 407,390 408,392 410,393 412,394 413,396 415,397 417,398 418,399 420,400 422,400 423,400 425,400 427,400 429,399 430,398 432,397 434,396 435,395 437,393 439,392 440,391 442,389 444,388 445,387 447,386 449,385 451,383 452,382 454,381 456,379 457,377 459,374 461,371 462,368 464,364 466,360 468,355 469,349 471,343 473,336 474,329 476,321 478,312 479,303 481,294 483,284 484,274 486,264 488,254 490,243 491,233 493,223 495,213 496,204 498,195 500,187 501,179 503,173 505,166 506,161 508,156 510,152 512,148 513,145 515,142 517,140 518,138 520,136 522,134 523,132 525,130 527,128 528,126 530,123 532,121 534,118 535,116 537,113 539,110 540,108 542,106 544,104 545,102 547,101 549,100 550,100 552,100 554,100 556,101 557,102 559,103 561,105 562,106 564,108 566,109 567,110 569,112 571,112 573,113 574,113 576,113 578,113 579,112 581,111 583,110 584,108 586,106 588,104 589,102 591,100 593,98 595,97 596,95 598,94 600,93 601,92 603,93 605,93 606,95 608,97 610,100 611,104 613,108 615,113 617,119 618,126 620,132 622,139 623,147 625,154 627,161 628,169 630,176 632,182 633,188 635,194 637,199 639,203 640,206 642,209 644,212 645,213 647,214 649,215 650,215 652,215 654,214 655,213 657,213 659,212 661,212 662,212 664,213 666,215 667,218 669,222 671,226 672,232 674,239 676,247 677,256 679,266 681,276 683,287 684,297 686,308 688,318 689,328 691,337 693,344 694,351 696,357 698,362 700,365 701,367 703,368 705,368 706,367 708,366 710,364 711,362 713,360 715,358 716,356 718,354 720,353 722,353 723,353 725,354 727,355 728,358 730,360 732,364 733,367 735,371 737,374 738,378 740,381 742,384 744,387 745,389 747,390 749,390 750,389 752,387 754,385 755,381 757,377 759,372 760,366 762,359 764,352 766,344 767,335 769,327 771,318 772,310 774,301 776,293 777,285 779,277 781,270 782,264 784,259 786,254 788,250 789,248 791,246 793,245 794,246 796,247 798,249 799,252 801,256 803,261 804,266 806,271 808,277 810,282 811,288 813,294 815,300 816,305 818,310 820,315 821,320 823,324 825,328 827,332 828,335 830,338 832,342 833,344 835,347 837,350 838,353 840,356 842,358 843,361 845,364 847,368 849,371 850,374 852,378 854,381 855,385 857,389 859,392 860,396 862,399 864,403 865,406 867,410 869,413 871,416 872,419 874,422 876,424 877,427 879,429 881,432 882,434 884,437 886,439 887,441 889,443 891,446 893,448 894,450 896,452 898,454 899,456 901,457 903,459 904,461 906,462 908,463 909,465 911,466 913,467 915,468 916,469 918,469 920,470 921,470 923,471 925,471 926,472 928,472 930,472 932,472 "/>
82 | <polygon opacity="0.25" fill="#1F78B4" points="164,461 166,462 168,462 169,463 171,464 173,465 175,466 176,467 178,468 180,469 181,470 183,470 185,471 186,471 188,471 190,472 191,472 193,472 195,472 197,471 198,471 200,470 202,470 203,469 205,468 207,467 208,467 210,466 212,465 214,464 215,463 217,462 219,461 220,461 222,460 224,460 225,460 227,460 229,460 230,460 232,460 234,461 236,461 237,462 239,462 241,463 242,464 244,465 246,465 247,466 249,466 251,467 252,467 254,467 256,467 258,467 259,466 261,466 263,465 264,465 266,464 268,463 269,462 271,461 273,460 274,459 276,458 278,457 280,456 281,456 283,455 285,454 286,454 288,454 290,454 291,454 293,454 295,454 296,455 298,455 300,456 302,457 303,458 305,458 307,459 308,460 310,460 312,461 313,461 315,461 317,460 318,460 320,459 322,459 324,458 325,456 327,455 329,454 330,452 332,451 334,450 335,448 337,447 339,446 341,446 342,445 344,445 346,445 347,445 349,445 351,445 352,446 354,446 356,447 357,447 359,447 361,447 363,446 364,446 366,445 368,443 369,441 371,439 373,436 374,433 376,430 378,427 379,423 381,419 383,415 385,411 386,407 388,404 390,400 391,397 393,395 395,393 396,391 398,390 400,389 401,389 403,389 405,390 407,390 408,392 410,393 412,394 413,396 415,397 417,398 418,399 420,400 422,400 423,400 425,400 427,400 429,399 430,398 432,397 434,396 435,395 437,393 439,392 440,391 442,389 444,388 445,387 447,386 449,385 451,383 452,382 454,381 456,379 457,377 459,374 461,371 462,368 464,364 466,360 468,355 469,349 471,343 473,336 474,329 476,321 478,312 479,303 481,294 483,284 484,274 486,264 488,254 490,243 491,233 493,223 495,213 496,204 498,195 500,187 501,179 503,173 505,166 506,161 508,156 510,152 512,148 513,145 515,142 517,140 518,138 520,136 522,134 523,132 525,130 527,128 528,126 530,123 532,121 534,118 535,116 537,113 539,110 540,108 542,106 544,104 545,102 547,101 549,100 550,100 552,100 554,100 556,101 557,102 559,103 561,105 562,106 564,108 566,109 567,110 569,112 571,112 573,113 574,113 576,113 578,113 579,112 581,111 583,110 584,108 586,106 588,104 589,102 591,100 593,98 595,97 596,95 598,94 600,93 601,92 603,93 605,93 606,95 608,97 610,100 611,104 613,108 615,113 617,119 618,126 620,132 622,139 623,147 625,154 627,161 628,169 630,176 632,182 633,188 635,194 637,199 639,203 640,206 642,209 644,212 645,213 647,214 649,215 650,215 652,215 654,214 655,213 657,213 659,212 661,212 662,212 664,213 666,215 667,218 669,222 671,226 672,232 674,239 676,247 677,256 679,266 681,276 683,287 684,297 686,308 688,318 689,328 691,337 693,344 694,351 696,357 698,362 700,365 701,367 703,368 705,368 706,367 708,366 710,364 711,362 713,360 715,358 716,356 718,354 720,353 722,353 723,353 725,354 727,355 728,358 730,360 732,364 733,367 735,371 737,374 738,378 740,381 742,384 744,387 745,389 747,390 749,390 750,389 752,387 754,385 755,381 757,377 759,372 760,366 762,359 764,352 766,344 767,335 769,327 771,318 772,310 774,301 776,293 777,285 779,277 781,270 782,264 784,259 786,254 788,250 789,248 791,246 793,245 794,246 796,247 798,249 799,252 801,256 803,261 804,266 806,271 808,277 810,282 811,288 813,294 815,300 816,305 818,310 820,315 821,320 823,324 825,328 827,332 828,335 830,338 832,342 833,344 835,347 837,350 838,353 840,356 842,358 843,361 845,364 847,368 849,371 850,374 852,378 852,473 164,473 "/>
83 | <polyline fill="none" opacity="1" stroke="#1F78B4" stroke-width="3" points="596,473 596,95 "/>
84 | <text x="798" y="68" dy="0.76em" text-anchor="start" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
85 | Bootstrap distribution
86 | </text>
87 | <text x="798" y="83" dy="0.76em" text-anchor="start" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
88 | Confidence interval
89 | </text>
90 | <text x="798" y="98" dy="0.76em" text-anchor="start" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
91 | Point estimate
92 | </text>
93 | <polyline fill="none" opacity="1" stroke="#1F78B4" stroke-width="1" points="768,73 788,73 "/>
94 | <rect x="768" y="83" width="20" height="10" opacity="0.25" fill="#1F78B4" stroke="none"/>
95 | <polyline fill="none" opacity="1" stroke="#1F78B4" stroke-width="1" points="768,103 788,103 "/>
96 | </svg>
97 | 
```
Page 62/103FirstPrevNextLast