This is page 89 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/arbitrary-transfer-from/report/regression.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 | arbitrary-transfer-from
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 | Total sample time (ms)
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 | Iterations (x 10^3)
10 | </text>
11 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="192" y1="472" x2="192" y2="53"/>
12 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="306" y1="472" x2="306" y2="53"/>
13 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="419" y1="472" x2="419" y2="53"/>
14 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="533" y1="472" x2="533" y2="53"/>
15 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="647" y1="472" x2="647" y2="53"/>
16 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="761" y1="472" x2="761" y2="53"/>
17 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="875" y1="472" x2="875" y2="53"/>
18 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="87" y1="430" x2="932" y2="430"/>
19 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="87" y1="379" x2="932" y2="379"/>
20 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="87" y1="329" x2="932" y2="329"/>
21 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="87" y1="279" x2="932" y2="279"/>
22 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="87" y1="228" x2="932" y2="228"/>
23 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="87" y1="178" x2="932" y2="178"/>
24 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="87" y1="128" x2="932" y2="128"/>
25 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="87" y1="77" x2="932" y2="77"/>
26 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="86,53 86,472 "/>
27 | <text x="77" y="430" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
28 | 10.0
29 | </text>
30 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,430 86,430 "/>
31 | <text x="77" y="379" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
32 | 20.0
33 | </text>
34 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,379 86,379 "/>
35 | <text x="77" y="329" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
36 | 30.0
37 | </text>
38 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,329 86,329 "/>
39 | <text x="77" y="279" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
40 | 40.0
41 | </text>
42 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,279 86,279 "/>
43 | <text x="77" y="228" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
44 | 50.0
45 | </text>
46 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,228 86,228 "/>
47 | <text x="77" y="178" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
48 | 60.0
49 | </text>
50 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,178 86,178 "/>
51 | <text x="77" y="128" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
52 | 70.0
53 | </text>
54 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,128 86,128 "/>
55 | <text x="77" y="77" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
56 | 80.0
57 | </text>
58 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,77 86,77 "/>
59 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="87,473 932,473 "/>
60 | <text x="192" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
61 | 0.2
62 | </text>
63 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="192,473 192,478 "/>
64 | <text x="306" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
65 | 0.4
66 | </text>
67 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="306,473 306,478 "/>
68 | <text x="419" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
69 | 0.6
70 | </text>
71 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="419,473 419,478 "/>
72 | <text x="533" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
73 | 0.8
74 | </text>
75 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="533,473 533,478 "/>
76 | <text x="647" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
77 | 1
78 | </text>
79 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="647,473 647,478 "/>
80 | <text x="761" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
81 | 1.2
82 | </text>
83 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="761,473 761,478 "/>
84 | <text x="875" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
85 | 1.4
86 | </text>
87 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="875,473 875,478 "/>
88 | <circle cx="87" cy="472" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
89 | <circle cx="95" cy="467" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
90 | <circle cx="104" cy="465" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
91 | <circle cx="112" cy="460" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
92 | <circle cx="121" cy="456" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
93 | <circle cx="129" cy="450" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
94 | <circle cx="138" cy="445" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
95 | <circle cx="146" cy="438" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
96 | <circle cx="155" cy="437" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
97 | <circle cx="163" cy="433" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
98 | <circle cx="172" cy="428" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
99 | <circle cx="180" cy="423" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
100 | <circle cx="189" cy="419" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
101 | <circle cx="197" cy="414" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
102 | <circle cx="206" cy="410" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
103 | <circle cx="215" cy="405" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
104 | <circle cx="223" cy="400" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
105 | <circle cx="232" cy="396" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
106 | <circle cx="240" cy="391" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
107 | <circle cx="249" cy="386" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
108 | <circle cx="257" cy="379" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
109 | <circle cx="266" cy="378" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
110 | <circle cx="274" cy="373" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
111 | <circle cx="283" cy="365" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
112 | <circle cx="291" cy="363" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
113 | <circle cx="300" cy="358" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
114 | <circle cx="308" cy="354" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
115 | <circle cx="317" cy="349" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
116 | <circle cx="325" cy="344" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
117 | <circle cx="334" cy="340" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
118 | <circle cx="343" cy="335" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
119 | <circle cx="351" cy="325" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
120 | <circle cx="360" cy="322" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
121 | <circle cx="368" cy="320" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
122 | <circle cx="377" cy="315" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
123 | <circle cx="385" cy="312" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
124 | <circle cx="394" cy="297" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
125 | <circle cx="402" cy="301" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
126 | <circle cx="411" cy="299" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
127 | <circle cx="419" cy="284" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
128 | <circle cx="428" cy="282" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
129 | <circle cx="436" cy="283" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
130 | <circle cx="445" cy="277" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
131 | <circle cx="454" cy="273" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
132 | <circle cx="462" cy="268" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
133 | <circle cx="471" cy="263" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
134 | <circle cx="479" cy="259" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
135 | <circle cx="488" cy="248" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
136 | <circle cx="496" cy="247" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
137 | <circle cx="505" cy="244" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
138 | <circle cx="513" cy="239" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
139 | <circle cx="522" cy="235" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
140 | <circle cx="530" cy="231" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
141 | <circle cx="539" cy="225" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
142 | <circle cx="547" cy="220" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
143 | <circle cx="556" cy="216" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
144 | <circle cx="564" cy="210" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
145 | <circle cx="573" cy="216" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
146 | <circle cx="582" cy="212" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
147 | <circle cx="590" cy="205" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
148 | <circle cx="599" cy="200" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
149 | <circle cx="607" cy="195" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
150 | <circle cx="616" cy="193" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
151 | <circle cx="624" cy="187" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
152 | <circle cx="633" cy="183" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
153 | <circle cx="641" cy="179" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
154 | <circle cx="650" cy="181" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
155 | <circle cx="658" cy="179" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
156 | <circle cx="667" cy="173" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
157 | <circle cx="675" cy="167" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
158 | <circle cx="684" cy="165" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
159 | <circle cx="693" cy="160" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
160 | <circle cx="701" cy="156" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
161 | <circle cx="710" cy="152" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
162 | <circle cx="718" cy="147" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
163 | <circle cx="727" cy="143" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
164 | <circle cx="735" cy="137" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
165 | <circle cx="744" cy="132" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
166 | <circle cx="752" cy="132" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
167 | <circle cx="761" cy="127" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
168 | <circle cx="769" cy="119" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
169 | <circle cx="778" cy="117" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
170 | <circle cx="786" cy="115" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
171 | <circle cx="795" cy="103" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
172 | <circle cx="803" cy="108" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
173 | <circle cx="812" cy="111" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
174 | <circle cx="821" cy="108" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
175 | <circle cx="829" cy="103" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
176 | <circle cx="838" cy="101" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
177 | <circle cx="846" cy="98" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
178 | <circle cx="855" cy="86" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
179 | <circle cx="863" cy="83" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
180 | <circle cx="872" cy="53" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
181 | <circle cx="880" cy="64" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
182 | <circle cx="889" cy="72" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
183 | <circle cx="897" cy="77" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
184 | <circle cx="906" cy="67" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
185 | <circle cx="914" cy="74" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
186 | <circle cx="923" cy="66" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
187 | <circle cx="932" cy="62" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
188 | <polyline fill="none" opacity="1" stroke="#1F78B4" stroke-width="1" points="87,473 932,53 "/>
189 | <polygon opacity="0.25" fill="#1F78B4" points="87,473 932,53 932,53 "/>
190 | <text x="132" y="68" dy="0.76em" text-anchor="start" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
191 | Sample
192 | </text>
193 | <text x="132" y="83" dy="0.76em" text-anchor="start" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
194 | Linear regression
195 | </text>
196 | <text x="132" y="98" dy="0.76em" text-anchor="start" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
197 | Confidence interval
198 | </text>
199 | <circle cx="112" cy="73" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
200 | <polyline fill="none" opacity="1" stroke="#1F78B4" stroke-width="2" points="102,88 122,88 "/>
201 | <rect x="102" y="98" width="20" height="10" opacity="0.25" fill="#1F78B4" stroke="none"/>
202 | </svg>
203 |
```
--------------------------------------------------------------------------------
/benchmarks/non-reentrant-before-others/report/regression.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 | non-reentrant-before-others
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 | Total sample time (ms)
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 | Iterations (x 10^3)
10 | </text>
11 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="230" y1="472" x2="230" y2="53"/>
12 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="383" y1="472" x2="383" y2="53"/>
13 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="535" y1="472" x2="535" y2="53"/>
14 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="688" y1="472" x2="688" y2="53"/>
15 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="840" y1="472" x2="840" y2="53"/>
16 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="87" y1="436" x2="932" y2="436"/>
17 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="87" y1="394" x2="932" y2="394"/>
18 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="87" y1="353" x2="932" y2="353"/>
19 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="87" y1="312" x2="932" y2="312"/>
20 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="87" y1="271" x2="932" y2="271"/>
21 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="87" y1="230" x2="932" y2="230"/>
22 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="87" y1="189" x2="932" y2="189"/>
23 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="87" y1="148" x2="932" y2="148"/>
24 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="87" y1="107" x2="932" y2="107"/>
25 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="87" y1="66" x2="932" y2="66"/>
26 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="86,53 86,472 "/>
27 | <text x="77" y="436" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
28 | 10.0
29 | </text>
30 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,436 86,436 "/>
31 | <text x="77" y="394" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
32 | 20.0
33 | </text>
34 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,394 86,394 "/>
35 | <text x="77" y="353" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
36 | 30.0
37 | </text>
38 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,353 86,353 "/>
39 | <text x="77" y="312" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
40 | 40.0
41 | </text>
42 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,312 86,312 "/>
43 | <text x="77" y="271" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
44 | 50.0
45 | </text>
46 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,271 86,271 "/>
47 | <text x="77" y="230" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
48 | 60.0
49 | </text>
50 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,230 86,230 "/>
51 | <text x="77" y="189" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
52 | 70.0
53 | </text>
54 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,189 86,189 "/>
55 | <text x="77" y="148" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
56 | 80.0
57 | </text>
58 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,148 86,148 "/>
59 | <text x="77" y="107" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
60 | 90.0
61 | </text>
62 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,107 86,107 "/>
63 | <text x="77" y="66" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
64 | 100.0
65 | </text>
66 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,66 86,66 "/>
67 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="87,473 932,473 "/>
68 | <text x="230" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
69 | 5
70 | </text>
71 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="230,473 230,478 "/>
72 | <text x="383" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
73 | 10
74 | </text>
75 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="383,473 383,478 "/>
76 | <text x="535" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
77 | 15
78 | </text>
79 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="535,473 535,478 "/>
80 | <text x="688" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
81 | 20
82 | </text>
83 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="688,473 688,478 "/>
84 | <text x="840" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
85 | 25
86 | </text>
87 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="840,473 840,478 "/>
88 | <circle cx="87" cy="472" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
89 | <circle cx="95" cy="468" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
90 | <circle cx="104" cy="462" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
91 | <circle cx="112" cy="460" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
92 | <circle cx="121" cy="456" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
93 | <circle cx="129" cy="452" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
94 | <circle cx="138" cy="447" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
95 | <circle cx="146" cy="444" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
96 | <circle cx="155" cy="440" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
97 | <circle cx="163" cy="436" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
98 | <circle cx="172" cy="432" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
99 | <circle cx="180" cy="428" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
100 | <circle cx="189" cy="424" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
101 | <circle cx="197" cy="420" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
102 | <circle cx="206" cy="416" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
103 | <circle cx="215" cy="412" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
104 | <circle cx="223" cy="408" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
105 | <circle cx="232" cy="404" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
106 | <circle cx="240" cy="402" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
107 | <circle cx="249" cy="398" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
108 | <circle cx="257" cy="394" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
109 | <circle cx="266" cy="390" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
110 | <circle cx="274" cy="386" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
111 | <circle cx="283" cy="382" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
112 | <circle cx="291" cy="378" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
113 | <circle cx="300" cy="374" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
114 | <circle cx="308" cy="370" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
115 | <circle cx="317" cy="366" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
116 | <circle cx="325" cy="362" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
117 | <circle cx="334" cy="358" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
118 | <circle cx="343" cy="354" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
119 | <circle cx="351" cy="351" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
120 | <circle cx="360" cy="347" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
121 | <circle cx="368" cy="342" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
122 | <circle cx="377" cy="339" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
123 | <circle cx="385" cy="335" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
124 | <circle cx="394" cy="331" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
125 | <circle cx="402" cy="331" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
126 | <circle cx="411" cy="327" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
127 | <circle cx="419" cy="323" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
128 | <circle cx="428" cy="319" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
129 | <circle cx="436" cy="316" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
130 | <circle cx="445" cy="311" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
131 | <circle cx="454" cy="307" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
132 | <circle cx="462" cy="303" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
133 | <circle cx="471" cy="300" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
134 | <circle cx="479" cy="296" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
135 | <circle cx="488" cy="292" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
136 | <circle cx="496" cy="289" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
137 | <circle cx="505" cy="285" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
138 | <circle cx="513" cy="281" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
139 | <circle cx="522" cy="278" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
140 | <circle cx="530" cy="274" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
141 | <circle cx="539" cy="270" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
142 | <circle cx="547" cy="266" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
143 | <circle cx="556" cy="263" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
144 | <circle cx="564" cy="257" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
145 | <circle cx="573" cy="255" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
146 | <circle cx="582" cy="251" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
147 | <circle cx="590" cy="247" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
148 | <circle cx="599" cy="243" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
149 | <circle cx="607" cy="239" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
150 | <circle cx="616" cy="234" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
151 | <circle cx="624" cy="238" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
152 | <circle cx="633" cy="234" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
153 | <circle cx="641" cy="230" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
154 | <circle cx="650" cy="226" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
155 | <circle cx="658" cy="223" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
156 | <circle cx="667" cy="220" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
157 | <circle cx="675" cy="216" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
158 | <circle cx="684" cy="212" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
159 | <circle cx="693" cy="208" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
160 | <circle cx="701" cy="204" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
161 | <circle cx="710" cy="199" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
162 | <circle cx="718" cy="197" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
163 | <circle cx="727" cy="194" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
164 | <circle cx="735" cy="190" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
165 | <circle cx="744" cy="187" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
166 | <circle cx="752" cy="185" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
167 | <circle cx="761" cy="184" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
168 | <circle cx="769" cy="180" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
169 | <circle cx="778" cy="177" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
170 | <circle cx="786" cy="174" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
171 | <circle cx="795" cy="170" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
172 | <circle cx="803" cy="167" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
173 | <circle cx="812" cy="163" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
174 | <circle cx="821" cy="159" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
175 | <circle cx="829" cy="153" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
176 | <circle cx="838" cy="152" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
177 | <circle cx="846" cy="150" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
178 | <circle cx="855" cy="145" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
179 | <circle cx="863" cy="142" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
180 | <circle cx="872" cy="138" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
181 | <circle cx="880" cy="134" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
182 | <circle cx="889" cy="130" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
183 | <circle cx="897" cy="125" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
184 | <circle cx="906" cy="124" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
185 | <circle cx="914" cy="120" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
186 | <circle cx="923" cy="116" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
187 | <circle cx="932" cy="53" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
188 | <polyline fill="none" opacity="1" stroke="#1F78B4" stroke-width="1" points="87,473 932,103 "/>
189 | <polygon opacity="0.25" fill="#1F78B4" points="87,473 932,106 932,99 "/>
190 | <text x="132" y="68" dy="0.76em" text-anchor="start" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
191 | Sample
192 | </text>
193 | <text x="132" y="83" dy="0.76em" text-anchor="start" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
194 | Linear regression
195 | </text>
196 | <text x="132" y="98" dy="0.76em" text-anchor="start" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
197 | Confidence interval
198 | </text>
199 | <circle cx="112" cy="73" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
200 | <polyline fill="none" opacity="1" stroke="#1F78B4" stroke-width="2" points="102,88 122,88 "/>
201 | <rect x="102" y="98" width="20" height="10" opacity="0.25" fill="#1F78B4" stroke="none"/>
202 | </svg>
203 |
```
--------------------------------------------------------------------------------
/benchmarks/unsafe-oz-erc721-mint/report/regression_small.svg:
--------------------------------------------------------------------------------
```
1 | <svg width="450" height="300" viewBox="0 0 450 300" xmlns="http://www.w3.org/2000/svg">
2 | <text x="15" y="130" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000" transform="rotate(270, 15, 130)">
3 | Total sample time (ms)
4 | </text>
5 | <text x="255" y="285" dy="-0.5ex" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
6 | Iterations
7 | </text>
8 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="116" y1="244" x2="116" y2="15"/>
9 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="162" y1="244" x2="162" y2="15"/>
10 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="207" y1="244" x2="207" y2="15"/>
11 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="252" y1="244" x2="252" y2="15"/>
12 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="298" y1="244" x2="298" y2="15"/>
13 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="343" y1="244" x2="343" y2="15"/>
14 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="388" y1="244" x2="388" y2="15"/>
15 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="434" y1="244" x2="434" y2="15"/>
16 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="75" y1="224" x2="434" y2="224"/>
17 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="75" y1="202" x2="434" y2="202"/>
18 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="75" y1="179" x2="434" y2="179"/>
19 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="75" y1="156" x2="434" y2="156"/>
20 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="75" y1="133" x2="434" y2="133"/>
21 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="75" y1="111" x2="434" y2="111"/>
22 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="75" y1="88" x2="434" y2="88"/>
23 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="75" y1="65" x2="434" y2="65"/>
24 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="75" y1="42" x2="434" y2="42"/>
25 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="75" y1="20" x2="434" y2="20"/>
26 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="74,15 74,244 "/>
27 | <text x="65" y="224" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
28 | 10.0
29 | </text>
30 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="69,224 74,224 "/>
31 | <text x="65" y="202" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
32 | 20.0
33 | </text>
34 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="69,202 74,202 "/>
35 | <text x="65" y="179" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
36 | 30.0
37 | </text>
38 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="69,179 74,179 "/>
39 | <text x="65" y="156" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
40 | 40.0
41 | </text>
42 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="69,156 74,156 "/>
43 | <text x="65" y="133" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
44 | 50.0
45 | </text>
46 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="69,133 74,133 "/>
47 | <text x="65" y="111" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
48 | 60.0
49 | </text>
50 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="69,111 74,111 "/>
51 | <text x="65" y="88" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
52 | 70.0
53 | </text>
54 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="69,88 74,88 "/>
55 | <text x="65" y="65" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
56 | 80.0
57 | </text>
58 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="69,65 74,65 "/>
59 | <text x="65" y="42" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
60 | 90.0
61 | </text>
62 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="69,42 74,42 "/>
63 | <text x="65" y="20" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
64 | 100.0
65 | </text>
66 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="69,20 74,20 "/>
67 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="75,245 434,245 "/>
68 | <text x="116" y="255" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
69 | 50
70 | </text>
71 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="116,245 116,250 "/>
72 | <text x="162" y="255" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
73 | 100
74 | </text>
75 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="162,245 162,250 "/>
76 | <text x="207" y="255" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
77 | 150
78 | </text>
79 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="207,245 207,250 "/>
80 | <text x="252" y="255" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
81 | 200
82 | </text>
83 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="252,245 252,250 "/>
84 | <text x="298" y="255" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
85 | 250
86 | </text>
87 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="298,245 298,250 "/>
88 | <text x="343" y="255" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
89 | 300
90 | </text>
91 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="343,245 343,250 "/>
92 | <text x="388" y="255" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
93 | 350
94 | </text>
95 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="388,245 388,250 "/>
96 | <text x="434" y="255" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
97 | 400
98 | </text>
99 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="434,245 434,250 "/>
100 | <circle cx="75" cy="244" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
101 | <circle cx="78" cy="241" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
102 | <circle cx="82" cy="239" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
103 | <circle cx="85" cy="235" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
104 | <circle cx="89" cy="233" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
105 | <circle cx="93" cy="230" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
106 | <circle cx="96" cy="227" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
107 | <circle cx="100" cy="224" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
108 | <circle cx="104" cy="221" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
109 | <circle cx="107" cy="218" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
110 | <circle cx="111" cy="215" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
111 | <circle cx="114" cy="212" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
112 | <circle cx="118" cy="210" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
113 | <circle cx="122" cy="207" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
114 | <circle cx="125" cy="204" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
115 | <circle cx="129" cy="201" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
116 | <circle cx="133" cy="198" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
117 | <circle cx="136" cy="195" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
118 | <circle cx="140" cy="193" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
119 | <circle cx="143" cy="189" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
120 | <circle cx="147" cy="185" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
121 | <circle cx="151" cy="183" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
122 | <circle cx="154" cy="180" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
123 | <circle cx="158" cy="178" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
124 | <circle cx="162" cy="175" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
125 | <circle cx="165" cy="172" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
126 | <circle cx="169" cy="169" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
127 | <circle cx="172" cy="166" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
128 | <circle cx="176" cy="164" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
129 | <circle cx="180" cy="161" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
130 | <circle cx="183" cy="158" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
131 | <circle cx="187" cy="156" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
132 | <circle cx="191" cy="152" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
133 | <circle cx="194" cy="149" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
134 | <circle cx="198" cy="147" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
135 | <circle cx="201" cy="143" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
136 | <circle cx="205" cy="141" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
137 | <circle cx="209" cy="135" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
138 | <circle cx="212" cy="127" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
139 | <circle cx="216" cy="132" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
140 | <circle cx="220" cy="128" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
141 | <circle cx="223" cy="127" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
142 | <circle cx="227" cy="124" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
143 | <circle cx="230" cy="120" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
144 | <circle cx="234" cy="118" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
145 | <circle cx="238" cy="113" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
146 | <circle cx="241" cy="111" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
147 | <circle cx="245" cy="107" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
148 | <circle cx="249" cy="109" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
149 | <circle cx="252" cy="110" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
150 | <circle cx="256" cy="107" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
151 | <circle cx="259" cy="104" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
152 | <circle cx="263" cy="102" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
153 | <circle cx="267" cy="99" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
154 | <circle cx="270" cy="96" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
155 | <circle cx="274" cy="91" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
156 | <circle cx="278" cy="69" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
157 | <circle cx="281" cy="66" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
158 | <circle cx="285" cy="80" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
159 | <circle cx="288" cy="82" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
160 | <circle cx="292" cy="79" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
161 | <circle cx="296" cy="77" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
162 | <circle cx="299" cy="74" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
163 | <circle cx="303" cy="71" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
164 | <circle cx="307" cy="68" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
165 | <circle cx="310" cy="66" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
166 | <circle cx="314" cy="70" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
167 | <circle cx="317" cy="67" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
168 | <circle cx="321" cy="65" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
169 | <circle cx="325" cy="62" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
170 | <circle cx="328" cy="59" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
171 | <circle cx="332" cy="57" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
172 | <circle cx="336" cy="52" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
173 | <circle cx="339" cy="53" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
174 | <circle cx="343" cy="56" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
175 | <circle cx="346" cy="53" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
176 | <circle cx="350" cy="51" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
177 | <circle cx="354" cy="50" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
178 | <circle cx="357" cy="53" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
179 | <circle cx="361" cy="50" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
180 | <circle cx="365" cy="48" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
181 | <circle cx="368" cy="45" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
182 | <circle cx="372" cy="43" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
183 | <circle cx="375" cy="40" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
184 | <circle cx="379" cy="37" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
185 | <circle cx="383" cy="38" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
186 | <circle cx="386" cy="40" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
187 | <circle cx="390" cy="39" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
188 | <circle cx="394" cy="35" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
189 | <circle cx="397" cy="15" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
190 | <circle cx="401" cy="32" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
191 | <circle cx="404" cy="35" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
192 | <circle cx="408" cy="34" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
193 | <circle cx="412" cy="32" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
194 | <circle cx="415" cy="31" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
195 | <circle cx="419" cy="31" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
196 | <circle cx="423" cy="31" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
197 | <circle cx="426" cy="29" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
198 | <circle cx="430" cy="27" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
199 | <circle cx="434" cy="24" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
200 | <polyline fill="none" opacity="1" stroke="#1F78B4" stroke-width="1" points="75,245 434,15 "/>
201 | <polygon opacity="0.25" fill="#1F78B4" points="75,245 434,15 434,15 "/>
202 | </svg>
203 |
```
--------------------------------------------------------------------------------
/benchmarks/block-timestamp-deadline/report/regression.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 | block-timestamp-deadline
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 | Total sample time (ms)
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 | Iterations
10 | </text>
11 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="185" y1="472" x2="185" y2="53"/>
12 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="291" y1="472" x2="291" y2="53"/>
13 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="398" y1="472" x2="398" y2="53"/>
14 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="505" y1="472" x2="505" y2="53"/>
15 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="611" y1="472" x2="611" y2="53"/>
16 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="718" y1="472" x2="718" y2="53"/>
17 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="825" y1="472" x2="825" y2="53"/>
18 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="932" y1="472" x2="932" y2="53"/>
19 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="87" y1="417" x2="932" y2="417"/>
20 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="87" y1="357" x2="932" y2="357"/>
21 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="87" y1="298" x2="932" y2="298"/>
22 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="87" y1="239" x2="932" y2="239"/>
23 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="87" y1="179" x2="932" y2="179"/>
24 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="87" y1="120" x2="932" y2="120"/>
25 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="87" y1="61" x2="932" y2="61"/>
26 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="86,53 86,472 "/>
27 | <text x="77" y="417" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
28 | 20.0
29 | </text>
30 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,417 86,417 "/>
31 | <text x="77" y="357" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
32 | 40.0
33 | </text>
34 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,357 86,357 "/>
35 | <text x="77" y="298" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
36 | 60.0
37 | </text>
38 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,298 86,298 "/>
39 | <text x="77" y="239" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
40 | 80.0
41 | </text>
42 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,239 86,239 "/>
43 | <text x="77" y="179" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
44 | 100.0
45 | </text>
46 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,179 86,179 "/>
47 | <text x="77" y="120" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
48 | 120.0
49 | </text>
50 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,120 86,120 "/>
51 | <text x="77" y="61" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
52 | 140.0
53 | </text>
54 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="81,61 86,61 "/>
55 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="87,473 932,473 "/>
56 | <text x="185" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
57 | 50
58 | </text>
59 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="185,473 185,478 "/>
60 | <text x="291" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
61 | 100
62 | </text>
63 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="291,473 291,478 "/>
64 | <text x="398" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
65 | 150
66 | </text>
67 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="398,473 398,478 "/>
68 | <text x="505" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
69 | 200
70 | </text>
71 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="505,473 505,478 "/>
72 | <text x="611" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
73 | 250
74 | </text>
75 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="611,473 611,478 "/>
76 | <text x="718" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
77 | 300
78 | </text>
79 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="718,473 718,478 "/>
80 | <text x="825" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
81 | 350
82 | </text>
83 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="825,473 825,478 "/>
84 | <text x="932" y="483" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
85 | 400
86 | </text>
87 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="932,473 932,478 "/>
88 | <circle cx="87" cy="472" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
89 | <circle cx="95" cy="469" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
90 | <circle cx="104" cy="464" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
91 | <circle cx="112" cy="463" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
92 | <circle cx="121" cy="459" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
93 | <circle cx="129" cy="455" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
94 | <circle cx="138" cy="451" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
95 | <circle cx="146" cy="449" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
96 | <circle cx="155" cy="446" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
97 | <circle cx="163" cy="444" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
98 | <circle cx="172" cy="441" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
99 | <circle cx="180" cy="437" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
100 | <circle cx="189" cy="434" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
101 | <circle cx="197" cy="430" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
102 | <circle cx="206" cy="427" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
103 | <circle cx="215" cy="424" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
104 | <circle cx="223" cy="421" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
105 | <circle cx="232" cy="418" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
106 | <circle cx="240" cy="414" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
107 | <circle cx="249" cy="411" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
108 | <circle cx="257" cy="408" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
109 | <circle cx="266" cy="407" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
110 | <circle cx="274" cy="403" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
111 | <circle cx="283" cy="399" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
112 | <circle cx="291" cy="396" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
113 | <circle cx="300" cy="392" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
114 | <circle cx="308" cy="384" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
115 | <circle cx="317" cy="375" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
116 | <circle cx="325" cy="370" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
117 | <circle cx="334" cy="368" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
118 | <circle cx="343" cy="367" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
119 | <circle cx="351" cy="362" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
120 | <circle cx="360" cy="360" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
121 | <circle cx="368" cy="360" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
122 | <circle cx="377" cy="360" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
123 | <circle cx="385" cy="359" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
124 | <circle cx="394" cy="354" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
125 | <circle cx="402" cy="350" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
126 | <circle cx="411" cy="349" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
127 | <circle cx="419" cy="349" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
128 | <circle cx="428" cy="345" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
129 | <circle cx="436" cy="345" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
130 | <circle cx="445" cy="338" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
131 | <circle cx="454" cy="329" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
132 | <circle cx="462" cy="312" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
133 | <circle cx="471" cy="312" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
134 | <circle cx="479" cy="311" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
135 | <circle cx="488" cy="300" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
136 | <circle cx="496" cy="319" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
137 | <circle cx="505" cy="319" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
138 | <circle cx="513" cy="316" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
139 | <circle cx="522" cy="313" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
140 | <circle cx="530" cy="309" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
141 | <circle cx="539" cy="304" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
142 | <circle cx="547" cy="299" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
143 | <circle cx="556" cy="280" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
144 | <circle cx="564" cy="275" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
145 | <circle cx="573" cy="273" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
146 | <circle cx="582" cy="266" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
147 | <circle cx="590" cy="279" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
148 | <circle cx="599" cy="275" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
149 | <circle cx="607" cy="272" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
150 | <circle cx="616" cy="270" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
151 | <circle cx="624" cy="267" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
152 | <circle cx="633" cy="263" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
153 | <circle cx="641" cy="258" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
154 | <circle cx="650" cy="254" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
155 | <circle cx="658" cy="249" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
156 | <circle cx="667" cy="250" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
157 | <circle cx="675" cy="245" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
158 | <circle cx="684" cy="241" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
159 | <circle cx="693" cy="237" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
160 | <circle cx="701" cy="233" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
161 | <circle cx="710" cy="229" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
162 | <circle cx="718" cy="229" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
163 | <circle cx="727" cy="226" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
164 | <circle cx="735" cy="217" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
165 | <circle cx="744" cy="217" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
166 | <circle cx="752" cy="217" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
167 | <circle cx="761" cy="208" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
168 | <circle cx="769" cy="210" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
169 | <circle cx="778" cy="204" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
170 | <circle cx="786" cy="205" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
171 | <circle cx="795" cy="194" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
172 | <circle cx="803" cy="191" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
173 | <circle cx="812" cy="192" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
174 | <circle cx="821" cy="189" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
175 | <circle cx="829" cy="182" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
176 | <circle cx="838" cy="178" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
177 | <circle cx="846" cy="176" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
178 | <circle cx="855" cy="170" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
179 | <circle cx="863" cy="170" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
180 | <circle cx="872" cy="158" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
181 | <circle cx="880" cy="156" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
182 | <circle cx="889" cy="152" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
183 | <circle cx="897" cy="144" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
184 | <circle cx="906" cy="144" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
185 | <circle cx="914" cy="144" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
186 | <circle cx="923" cy="53" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
187 | <circle cx="932" cy="120" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
188 | <polyline fill="none" opacity="1" stroke="#1F78B4" stroke-width="1" points="87,473 932,139 "/>
189 | <polygon opacity="0.25" fill="#1F78B4" points="87,473 932,143 932,132 "/>
190 | <text x="132" y="68" dy="0.76em" text-anchor="start" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
191 | Sample
192 | </text>
193 | <text x="132" y="83" dy="0.76em" text-anchor="start" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
194 | Linear regression
195 | </text>
196 | <text x="132" y="98" dy="0.76em" text-anchor="start" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
197 | Confidence interval
198 | </text>
199 | <circle cx="112" cy="73" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
200 | <polyline fill="none" opacity="1" stroke="#1F78B4" stroke-width="2" points="102,88 122,88 "/>
201 | <rect x="102" y="98" width="20" height="10" opacity="0.25" fill="#1F78B4" stroke="none"/>
202 | </svg>
203 |
```
--------------------------------------------------------------------------------
/benchmarks/empty-block/report/regression_small.svg:
--------------------------------------------------------------------------------
```
1 | <svg width="450" height="300" viewBox="0 0 450 300" xmlns="http://www.w3.org/2000/svg">
2 | <text x="15" y="130" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000" transform="rotate(270, 15, 130)">
3 | Total sample time (ms)
4 | </text>
5 | <text x="255" y="285" dy="-0.5ex" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
6 | Iterations (x 10^3)
7 | </text>
8 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="109" y1="244" x2="109" y2="15"/>
9 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="147" y1="244" x2="147" y2="15"/>
10 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="185" y1="244" x2="185" y2="15"/>
11 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="224" y1="244" x2="224" y2="15"/>
12 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="262" y1="244" x2="262" y2="15"/>
13 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="300" y1="244" x2="300" y2="15"/>
14 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="338" y1="244" x2="338" y2="15"/>
15 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="376" y1="244" x2="376" y2="15"/>
16 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="414" y1="244" x2="414" y2="15"/>
17 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="75" y1="222" x2="434" y2="222"/>
18 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="75" y1="196" x2="434" y2="196"/>
19 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="75" y1="171" x2="434" y2="171"/>
20 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="75" y1="146" x2="434" y2="146"/>
21 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="75" y1="120" x2="434" y2="120"/>
22 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="75" y1="95" x2="434" y2="95"/>
23 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="75" y1="70" x2="434" y2="70"/>
24 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="75" y1="44" x2="434" y2="44"/>
25 | <line opacity="0.2" stroke="#000000" stroke-width="1" x1="75" y1="19" x2="434" y2="19"/>
26 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="74,15 74,244 "/>
27 | <text x="65" y="222" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
28 | 10.0
29 | </text>
30 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="69,222 74,222 "/>
31 | <text x="65" y="196" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
32 | 20.0
33 | </text>
34 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="69,196 74,196 "/>
35 | <text x="65" y="171" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
36 | 30.0
37 | </text>
38 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="69,171 74,171 "/>
39 | <text x="65" y="146" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
40 | 40.0
41 | </text>
42 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="69,146 74,146 "/>
43 | <text x="65" y="120" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
44 | 50.0
45 | </text>
46 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="69,120 74,120 "/>
47 | <text x="65" y="95" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
48 | 60.0
49 | </text>
50 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="69,95 74,95 "/>
51 | <text x="65" y="70" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
52 | 70.0
53 | </text>
54 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="69,70 74,70 "/>
55 | <text x="65" y="44" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
56 | 80.0
57 | </text>
58 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="69,44 74,44 "/>
59 | <text x="65" y="19" dy="0.5ex" text-anchor="end" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
60 | 90.0
61 | </text>
62 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="69,19 74,19 "/>
63 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="75,245 434,245 "/>
64 | <text x="109" y="255" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
65 | 0.2
66 | </text>
67 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="109,245 109,250 "/>
68 | <text x="147" y="255" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
69 | 0.4
70 | </text>
71 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="147,245 147,250 "/>
72 | <text x="185" y="255" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
73 | 0.6
74 | </text>
75 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="185,245 185,250 "/>
76 | <text x="224" y="255" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
77 | 0.8
78 | </text>
79 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="224,245 224,250 "/>
80 | <text x="262" y="255" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
81 | 1
82 | </text>
83 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="262,245 262,250 "/>
84 | <text x="300" y="255" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
85 | 1.2
86 | </text>
87 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="300,245 300,250 "/>
88 | <text x="338" y="255" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
89 | 1.4
90 | </text>
91 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="338,245 338,250 "/>
92 | <text x="376" y="255" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
93 | 1.6
94 | </text>
95 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="376,245 376,250 "/>
96 | <text x="414" y="255" dy="0.76em" text-anchor="middle" font-family="sans-serif" font-size="9.67741935483871" opacity="1" fill="#000000">
97 | 1.8
98 | </text>
99 | <polyline fill="none" opacity="1" stroke="#000000" stroke-width="1" points="414,245 414,250 "/>
100 | <circle cx="75" cy="244" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
101 | <circle cx="78" cy="242" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
102 | <circle cx="82" cy="237" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
103 | <circle cx="85" cy="237" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
104 | <circle cx="89" cy="234" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
105 | <circle cx="93" cy="231" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
106 | <circle cx="96" cy="230" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
107 | <circle cx="100" cy="227" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
108 | <circle cx="104" cy="224" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
109 | <circle cx="107" cy="222" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
110 | <circle cx="111" cy="220" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
111 | <circle cx="114" cy="217" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
112 | <circle cx="118" cy="214" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
113 | <circle cx="122" cy="212" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
114 | <circle cx="125" cy="210" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
115 | <circle cx="129" cy="207" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
116 | <circle cx="133" cy="205" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
117 | <circle cx="136" cy="202" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
118 | <circle cx="140" cy="200" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
119 | <circle cx="143" cy="197" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
120 | <circle cx="147" cy="195" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
121 | <circle cx="151" cy="192" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
122 | <circle cx="154" cy="190" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
123 | <circle cx="158" cy="187" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
124 | <circle cx="162" cy="183" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
125 | <circle cx="165" cy="182" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
126 | <circle cx="169" cy="179" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
127 | <circle cx="172" cy="176" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
128 | <circle cx="176" cy="175" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
129 | <circle cx="180" cy="173" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
130 | <circle cx="183" cy="170" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
131 | <circle cx="187" cy="168" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
132 | <circle cx="191" cy="165" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
133 | <circle cx="194" cy="163" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
134 | <circle cx="198" cy="160" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
135 | <circle cx="201" cy="158" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
136 | <circle cx="205" cy="156" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
137 | <circle cx="209" cy="153" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
138 | <circle cx="212" cy="151" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
139 | <circle cx="216" cy="148" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
140 | <circle cx="220" cy="145" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
141 | <circle cx="223" cy="143" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
142 | <circle cx="227" cy="142" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
143 | <circle cx="230" cy="140" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
144 | <circle cx="234" cy="137" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
145 | <circle cx="238" cy="135" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
146 | <circle cx="241" cy="132" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
147 | <circle cx="245" cy="130" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
148 | <circle cx="249" cy="127" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
149 | <circle cx="252" cy="125" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
150 | <circle cx="256" cy="122" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
151 | <circle cx="259" cy="119" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
152 | <circle cx="263" cy="117" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
153 | <circle cx="267" cy="117" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
154 | <circle cx="270" cy="114" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
155 | <circle cx="274" cy="110" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
156 | <circle cx="278" cy="108" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
157 | <circle cx="281" cy="105" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
158 | <circle cx="285" cy="103" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
159 | <circle cx="288" cy="101" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
160 | <circle cx="292" cy="98" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
161 | <circle cx="296" cy="94" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
162 | <circle cx="299" cy="93" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
163 | <circle cx="303" cy="92" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
164 | <circle cx="307" cy="91" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
165 | <circle cx="310" cy="88" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
166 | <circle cx="314" cy="86" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
167 | <circle cx="317" cy="83" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
168 | <circle cx="321" cy="79" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
169 | <circle cx="325" cy="74" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
170 | <circle cx="328" cy="73" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
171 | <circle cx="332" cy="72" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
172 | <circle cx="336" cy="73" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
173 | <circle cx="339" cy="72" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
174 | <circle cx="343" cy="69" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
175 | <circle cx="346" cy="67" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
176 | <circle cx="350" cy="62" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
177 | <circle cx="354" cy="62" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
178 | <circle cx="357" cy="60" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
179 | <circle cx="361" cy="58" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
180 | <circle cx="365" cy="57" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
181 | <circle cx="368" cy="54" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
182 | <circle cx="372" cy="50" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
183 | <circle cx="375" cy="45" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
184 | <circle cx="379" cy="45" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
185 | <circle cx="383" cy="43" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
186 | <circle cx="386" cy="47" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
187 | <circle cx="390" cy="46" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
188 | <circle cx="394" cy="42" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
189 | <circle cx="397" cy="33" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
190 | <circle cx="401" cy="36" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
191 | <circle cx="404" cy="34" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
192 | <circle cx="408" cy="27" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
193 | <circle cx="412" cy="28" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
194 | <circle cx="415" cy="26" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
195 | <circle cx="419" cy="20" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
196 | <circle cx="423" cy="21" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
197 | <circle cx="426" cy="19" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
198 | <circle cx="430" cy="18" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
199 | <circle cx="434" cy="15" r="3" opacity="1" fill="#1F78B4" stroke="none" stroke-width="1"/>
200 | <polyline fill="none" opacity="1" stroke="#1F78B4" stroke-width="1" points="75,245 434,15 "/>
201 | <polygon opacity="0.25" fill="#1F78B4" points="75,245 434,15 434,15 "/>
202 | </svg>
203 |
```