static analysis tools mythril EVM bytecode assessment tool for detecting contract vulnerabilities using taint analysis, concolic analysis, and control flow checking slither python-based Solidity static analysis framework for finding vulnerabilities, enhancing code comprehension, and writing custom analyses for smart contracts rattle EVM bytecode static analysis framework designed to work on deployed smart contracts solhunt solidity analyzer in rust caracal static analyzer for starknet smart contracts codeql powerful static analysis framework allowing query codebases for specific code patterns trail of bits docs