{
  "ml": {
    "v": "7",
    "eng": "2.13.0",
    "lvl": -1,
    "conf": 0,
    "prob": 0.01978145,
    "files": [
      {
        "id": 0,
        "lvl": -1,
        "conf": 0,
        "prob": 0.01978144980967045,
        "type": "crate"
      },
      {
        "id": 5,
        "lvl": -1,
        "conf": 0,
        "prob": 0.00002475579640304204,
        "type": "markdown"
      },
      {
        "id": 6,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000026265779524692334,
        "type": "rust"
      },
      {
        "id": 9,
        "lvl": -1,
        "conf": 0,
        "prob": 0.00001704692840576172,
        "type": "rust"
      },
      {
        "id": 10,
        "lvl": -1,
        "conf": 0,
        "prob": 0.00002215305903519038,
        "type": "rust"
      },
      {
        "id": 11,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000024725994080654345,
        "type": "rust"
      },
      {
        "id": 12,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000017762184143066406,
        "type": "rust"
      }
    ],
    "version": "v18.18",
    "analyzed_at": "2026-10-25T18:03:36Z"
  },
  "path": "ibc-client-tendermint-types@0.57.0",
  "raw": {
    "files": [
      {
        "id": 0,
        "mol": "H(Cm)Md₃(InPa)",
        "sha": "aa16efb7dc6d7b73d483e55553e6c69eeaf0b82384b464514c52fe813d3c55d2",
        "path": "ibc-client-tendermint-types-0.57.0.crate",
        "risk": 8,
        "size": 24500,
        "type": "crate",
        "facts": {
          "metrics": {
            "file": {
              "size": 24500,
              "entropy": 7.99
            },
            "binary": {
              "peak_region_bytes": 24500,
              "peak_region_entropy": 7.81
            }
          }
        },
        "ident": {
          "name": {
            "value": "ibc-client-tendermint-types",
            "source": "crate.name",
            "verified": false
          },
          "urls": [
            {
              "url": "https://github.com/cosmos/ibc-rs",
              "kind": "repository",
              "source": "crate.repository"
            }
          ],
          "trust": "unsigned",
          "emails": [
            "hello@informal.systems"
          ],
          "authors": [
            {
              "name": "Informal Systems",
              "role": "author",
              "email": "hello@informal.systems",
              "source": "crate.authors"
            }
          ],
          "version": {
            "value": "0.57.0",
            "source": "crate.version",
            "verified": false
          },
          "identifier": {
            "value": "ibc-client-tendermint-types",
            "source": "crate.name",
            "verified": false
          },
          "description": {
            "value": "Maintained by `ibc-rs`, encapsulates essential ICS-07 Tendermint Client data structures and domain types, as specified in the Inter-Blockchain Communication (I…",
            "source": "crate.description",
            "verified": false
          }
        },
        "traits": [
          {
            "id": "metadata/file/naming::uppercase-readme-md-basename",
            "conf": 1.0,
            "crit": 3,
            "desc": "Basename is uppercase README.md",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/import/rust/tendermint/crypto/sha256::tendermint/crypto/sha256",
            "conf": 0.95,
            "crit": 3,
            "desc": "imports tendermint::crypto::Sha256",
            "from": [
              {
                "file": 9
              }
            ]
          },
          {
            "id": "metadata/package/testing/harness/unit::rust-test",
            "conf": 0.95,
            "crit": 3,
            "desc": "Rust test marker or harness",
            "from": [
              {
                "off": 13450,
                "file": 6,
                "line": 387
              },
              {
                "off": 1344,
                "file": 10,
                "line": 54
              }
            ],
            "uses": [
              94,
              95
            ]
          },
          {
            "id": "micro-behaviors/communications/http/url/forge::public-code-forge-url",
            "conf": 0.9,
            "crit": 3,
            "desc": "References a public code-forge URL",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/build/archive::archive-cargo-toml-entry",
            "conf": 0.9,
            "crit": 2,
            "desc": "Archive contains Cargo.toml"
          },
          {
            "id": "metadata/file/comment::source-at-most-two-comments",
            "conf": 0.88,
            "crit": 2,
            "desc": "Source has at most two comments",
            "from": [
              {
                "file": 11
              }
            ]
          },
          {
            "id": "metadata/file/comment::source-comment-bytes-over-300",
            "conf": 0.92,
            "crit": 2,
            "desc": "Source has over 300 comment bytes",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "metadata/file/extension/identity::doc-or-config-extension",
            "conf": 1.0,
            "crit": 2,
            "desc": "Text, document, or config extension",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/file/extension/identity::json-txt-md-basename",
            "conf": 1.0,
            "crit": 2,
            "desc": "JSON, text, or markdown filename extension",
            "from": [
              {
                "file": 1
              }
            ]
          },
          {
            "id": "metadata/file/extension/identity::markdown-file-basename",
            "conf": 1.0,
            "crit": 2,
            "desc": "Markdown or documentation file extension",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/file/extension/identity::rust-source-extension",
            "conf": 0.98,
            "crit": 2,
            "desc": "Rust source filename extension",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "metadata/file/extension/identity::web-asset-extension",
            "conf": 1.0,
            "crit": 2,
            "desc": "Common web or JSON file extension",
            "from": [
              {
                "file": 1
              }
            ]
          },
          {
            "id": "metadata/file/extension/package::rust-crate-basename",
            "conf": 0.95,
            "crit": 2,
            "desc": "Archive basename has a .crate suffix"
          },
          {
            "id": "metadata/file/format/conformance::json-document-opening",
            "conf": 0.95,
            "crit": 2,
            "desc": "File begins with a JSON document",
            "from": [
              {
                "file": 1
              }
            ]
          },
          {
            "id": "metadata/file/format/structured::valid",
            "conf": 0.6,
            "crit": 2,
            "desc": "File contains valid JSON data",
            "from": [
              {
                "file": 1
              }
            ]
          },
          {
            "id": "metadata/file/naming::readme-requirements-install-basename",
            "conf": 0.85,
            "crit": 2,
            "desc": "Basename starts README, REQUIREMENTS, or INSTALL",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/file/profile/structured::cargo-core-fields-present",
            "conf": 0.88,
            "crit": 2,
            "desc": "Cargo name/version and another project field are present",
            "from": [
              {
                "file": 3
              }
            ],
            "uses": [
              82,
              83,
              89,
              90,
              92,
              97
            ]
          },
          {
            "id": "metadata/import/rust/client_state::client_state",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports client_state::*",
            "from": [
              {
                "file": 10
              }
            ]
          },
          {
            "id": "metadata/import/rust/consensus_state::consensus_state",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports consensus_state::*",
            "from": [
              {
                "file": 10
              }
            ]
          },
          {
            "id": "metadata/import/rust/core/cmp/max::core/cmp/max",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports core::cmp::max",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "metadata/import/rust/core/fmt/display::core/fmt/display",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports core::fmt::Display",
            "from": [
              {
                "file": 9
              }
            ]
          },
          {
            "id": "metadata/import/rust/core/fmt/error::FmtError",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports core::fmt::Error as FmtError",
            "from": [
              {
                "file": 9
              }
            ]
          },
          {
            "id": "metadata/import/rust/core/fmt/formatter::core/fmt/formatter",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports core::fmt::Formatter",
            "from": [
              {
                "file": 9
              }
            ]
          },
          {
            "id": "metadata/import/rust/core/str/fromstr::core/str/fromstr",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports core::str::FromStr",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "metadata/import/rust/core/time/duration::core/time/duration",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports core::time::Duration",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "metadata/import/rust/crate/error/tendermintclienterror::crate/error/tendermintclienterror",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports crate::error::TendermintClientError",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "metadata/import/rust/crate/header/header::TmHeader",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports crate::header::Header as TmHeader",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "metadata/import/rust/crate/header/header::crate/header/header",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports crate::header::Header",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/import/rust/crate/trust_threshold/trustthreshold::crate/trust_threshold/trustthreshold",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports crate::trust_threshold::TrustThreshold",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "metadata/import/rust/displaydoc/display::displaydoc/display",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports displaydoc::Display",
            "from": [
              {
                "file": 8
              }
            ]
          },
          {
            "id": "metadata/import/rust/header::header",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports header::*",
            "from": [
              {
                "file": 10
              }
            ]
          },
          {
            "id": "metadata/import/rust/ibc_core_client_types/error/clienterror::ibc_core_client_types/error/clienterror",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_core_client_types::error::ClientError",
            "from": [
              {
                "file": 8
              }
            ]
          },
          {
            "id": "metadata/import/rust/ibc_core_client_types/height::ibc_core_client_types/height",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_core_client_types::Height",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "metadata/import/rust/ibc_core_client_types/proto/v1/height::RawHeight",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_core_client_types::proto::v1::Height as RawHeight",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "metadata/import/rust/ibc_core_commitment_types/commitment/commitmentroot::ibc_core_commitment_types/commitment/commitmentroot",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_core_commitment_types::commitment::CommitmentRoot",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/import/rust/ibc_core_commitment_types/error/commitmenterror::ibc_core_commitment_types/error/commitmenterror",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_core_commitment_types::error::CommitmentError",
            "from": [
              {
                "file": 8
              }
            ]
          },
          {
            "id": "metadata/import/rust/ibc_core_commitment_types/specs/proofspecs::ibc_core_commitment_types/specs/proofspecs",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_core_commitment_types::specs::ProofSpecs",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "metadata/import/rust/ibc_core_host_types/error/decodingerror::ibc_core_host_types/error/decodingerror",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_core_host_types::error::DecodingError",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "metadata/import/rust/ibc_core_host_types/error/identifiererror::ibc_core_host_types/error/identifiererror",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_core_host_types::error::IdentifierError",
            "from": [
              {
                "file": 8
              }
            ]
          },
          {
            "id": "metadata/import/rust/ibc_core_host_types/identifiers/chainid::ibc_core_host_types/identifiers/chainid",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_core_host_types::identifiers::ChainId",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "metadata/import/rust/ibc_core_host_types/identifiers/clientid::ibc_core_host_types/identifiers/clientid",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_core_host_types::identifiers::ClientId",
            "from": [
              {
                "file": 11
              }
            ]
          },
          {
            "id": "metadata/import/rust/ibc_core_host_types/identifiers/clienttype::ibc_core_host_types/identifiers/clienttype",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_core_host_types::identifiers::ClientType",
            "from": [
              {
                "file": 10
              }
            ]
          },
          {
            "id": "metadata/import/rust/ibc_primitives/intohosttime::ibc_primitives/intohosttime",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_primitives::IntoHostTime",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/import/rust/ibc_primitives/intotimestamp::ibc_primitives/intotimestamp",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_primitives::IntoTimestamp",
            "from": [
              {
                "file": 9
              }
            ]
          },
          {
            "id": "metadata/import/rust/ibc_primitives/prelude::ibc_primitives/prelude",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_primitives::prelude::*",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "metadata/import/rust/ibc_primitives/timestamp::ibc_primitives/timestamp",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_primitives::Timestamp",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/import/rust/ibc_primitives/timestamperror::ibc_primitives/timestamperror",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_primitives::TimestampError",
            "from": [
              {
                "file": 8
              }
            ]
          },
          {
            "id": "metadata/import/rust/ibc_primitives/utils/prettyslice::ibc_primitives/utils/prettyslice",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_primitives::utils::PrettySlice",
            "from": [
              {
                "file": 9
              }
            ]
          },
          {
            "id": "metadata/import/rust/ibc_primitives/zero_duration::ibc_primitives/zero_duration",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_primitives::ZERO_DURATION",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "metadata/import/rust/ibc_proto/google/protobuf/any::ibc_proto/google/protobuf/any",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_proto::google::protobuf::Any",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "metadata/import/rust/ibc_proto/ibc/lightclients/tendermint/v1/clientstate::RawTmClientState",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_proto::ibc::lightclients::tendermint::v1::ClientState as RawTmClientState",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "metadata/import/rust/ibc_proto/ibc/lightclients/tendermint/v1/consensusstate::RawConsensusState",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_proto::ibc::lightclients::tendermint::v1::ConsensusState as RawConsensusState",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/import/rust/ibc_proto/ibc/lightclients/tendermint/v1/fraction::ibc_proto/ibc/lightclients/tendermint/v1/fraction",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_proto::ibc::lightclients::tendermint::v1::Fraction",
            "from": [
              {
                "file": 12
              }
            ]
          },
          {
            "id": "metadata/import/rust/ibc_proto/ibc/lightclients/tendermint/v1/header::RawHeader",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_proto::ibc::lightclients::tendermint::v1::Header as RawHeader",
            "from": [
              {
                "file": 9
              }
            ]
          },
          {
            "id": "metadata/import/rust/ibc_proto/ibc/lightclients/tendermint/v1/misbehaviour::RawMisbehaviour",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_proto::ibc::lightclients::tendermint::v1::Misbehaviour as RawMisbehaviour",
            "from": [
              {
                "file": 11
              }
            ]
          },
          {
            "id": "metadata/import/rust/ibc_proto/ibc/lightclients/tendermint::ibc_proto/ibc/lightclients/tendermint",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_proto::ibc::lightclients::tendermint::*",
            "from": [
              {
                "file": 10
              }
            ]
          },
          {
            "id": "metadata/import/rust/ibc_proto/protobuf::ibc_proto/protobuf",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_proto::Protobuf",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "metadata/import/rust/misbehaviour::misbehaviour",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports misbehaviour::*",
            "from": [
              {
                "file": 10
              }
            ]
          },
          {
            "id": "metadata/import/rust/pretty/prettysignedheader::pretty/prettysignedheader",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports pretty::PrettySignedHeader",
            "from": [
              {
                "file": 9
              }
            ]
          },
          {
            "id": "metadata/import/rust/pretty/prettyvalidatorset::pretty/prettyvalidatorset",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports pretty::PrettyValidatorSet",
            "from": [
              {
                "file": 9
              }
            ]
          },
          {
            "id": "metadata/import/rust/super::super",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports super::*",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "metadata/import/rust/tendermint/block/signed_header/signedheader::tendermint/block/signed_header/signedheader",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports tendermint::block::signed_header::SignedHeader",
            "from": [
              {
                "file": 9
              }
            ]
          },
          {
            "id": "metadata/import/rust/tendermint/chain/id/max_length::MaxChainIdLen",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports tendermint::chain::id::MAX_LENGTH as MaxChainIdLen",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "metadata/import/rust/tendermint/chain/id::TmChainId",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports tendermint::chain::Id as TmChainId",
            "from": [
              {
                "file": 9
              }
            ]
          },
          {
            "id": "metadata/import/rust/tendermint/hash/algorithm::tendermint/hash/algorithm",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports tendermint::hash::Algorithm",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/import/rust/tendermint/hash::tendermint/hash",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports tendermint::Hash",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/import/rust/tendermint/merkle/merklehash::tendermint/merkle/merklehash",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports tendermint::merkle::MerkleHash",
            "from": [
              {
                "file": 9
              }
            ]
          },
          {
            "id": "metadata/import/rust/tendermint/time/time::tendermint/time/time",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports tendermint::time::Time",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/import/rust/tendermint/time::tendermint/time",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports tendermint::Time",
            "from": [
              {
                "file": 9
              }
            ]
          },
          {
            "id": "metadata/import/rust/tendermint/trust_threshold/trustthresholdfraction::TendermintTrustThresholdFraction",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports tendermint::trust_threshold::TrustThresholdFraction as TendermintTrustThresholdFraction",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "metadata/import/rust/tendermint/trust_threshold/trustthresholdfraction::tendermint/trust_threshold/trustthresholdfraction",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports tendermint::trust_threshold::TrustThresholdFraction",
            "from": [
              {
                "file": 12
              }
            ]
          },
          {
            "id": "metadata/import/rust/tendermint/validator/set::ValidatorSet",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports tendermint::validator::Set as ValidatorSet",
            "from": [
              {
                "file": 9
              }
            ]
          },
          {
            "id": "metadata/import/rust/tendermint_light_client_verifier/errors/verificationerrordetail::LightClientErrorDetail",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports tendermint_light_client_verifier::errors::VerificationErrorDetail as LightClientErrorDetail",
            "from": [
              {
                "file": 8
              }
            ]
          },
          {
            "id": "metadata/import/rust/tendermint_light_client_verifier/operations/votingpowertally::tendermint_light_client_verifier/operations/votingpowertally",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports tendermint_light_client_verifier::operations::VotingPowerTally",
            "from": [
              {
                "file": 8
              }
            ]
          },
          {
            "id": "metadata/import/rust/tendermint_light_client_verifier/options/options::tendermint_light_client_verifier/options/options",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports tendermint_light_client_verifier::options::Options",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "metadata/import/rust/tendermint_light_client_verifier/types/trustedblockstate::tendermint_light_client_verifier/types/trustedblockstate",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports tendermint_light_client_verifier::types::TrustedBlockState",
            "from": [
              {
                "file": 9
              }
            ]
          },
          {
            "id": "metadata/import/rust/tendermint_light_client_verifier/types/untrustedblockstate::tendermint_light_client_verifier/types/untrustedblockstate",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports tendermint_light_client_verifier::types::UntrustedBlockState",
            "from": [
              {
                "file": 9
              }
            ]
          },
          {
            "id": "metadata/import/rust/tendermint_light_client_verifier/verdict::tendermint_light_client_verifier/verdict",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports tendermint_light_client_verifier::Verdict",
            "from": [
              {
                "file": 8
              }
            ]
          },
          {
            "id": "metadata/import/rust/tendermint_proto/google/protobuf::tpb",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports tendermint_proto::google::protobuf as tpb",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/import/rust/trust_threshold::trust_threshold",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports trust_threshold::*",
            "from": [
              {
                "file": 10
              }
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english",
            "conf": 0.8,
            "crit": 2,
            "desc": "Contains common English function words",
            "from": [
              {
                "file": 4
              }
            ],
            "uses": [
              105,
              106,
              107,
              108,
              109,
              110,
              111
            ]
          },
          {
            "id": "metadata/package/dependencies/lockfile::cargo-lock-package-table",
            "conf": 0.99,
            "crit": 2,
            "desc": "Cargo lockfile package table",
            "from": [
              {
                "file": 2
              }
            ]
          },
          {
            "id": "metadata/package/description/length::cargo-description-at-least-20-characters",
            "conf": 0.78,
            "crit": 2,
            "desc": "Cargo description has at least 20 characters"
          },
          {
            "id": "metadata/package/documentation/source::cargo-readme-field-present",
            "conf": 0.85,
            "crit": 2,
            "desc": "Cargo readme field is populated"
          },
          {
            "id": "metadata/package/documentation/source::package-doc-reference-basename",
            "conf": 0.9,
            "crit": 2,
            "desc": "Package documentation basename",
            "from": [
              {
                "file": 4
              }
            ]
          },
          {
            "id": "metadata/package/documentation/source::readme-any-basename",
            "conf": 0.99,
            "crit": 2,
            "desc": "README document basename",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/package/documentation/source::readme-markdown-basename",
            "conf": 0.99,
            "crit": 2,
            "desc": "README Markdown basename",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/package/files/archive-member::archive-readme-member",
            "conf": 0.9,
            "crit": 2,
            "desc": "Archive member is a README document"
          },
          {
            "id": "metadata/package/integrity::cargo-registry-checksum-field",
            "conf": 0.99,
            "crit": 2,
            "desc": "Cargo lockfile 64-hex checksum field",
            "from": [
              {
                "file": 2
              }
            ]
          },
          {
            "id": "metadata/package/license::cargo-license-field-present",
            "conf": 0.85,
            "crit": 2,
            "desc": "Cargo license field is populated"
          },
          {
            "id": "metadata/package/name/identity::cargo-package-name-present",
            "conf": 0.85,
            "crit": 2,
            "desc": "Cargo package name field is populated"
          },
          {
            "id": "metadata/package/repository::cargo-repository-code-forge-host",
            "conf": 0.85,
            "crit": 2,
            "desc": "Cargo repository names a common code-forge host"
          },
          {
            "id": "metadata/package/repository::cargo-repository-field-present",
            "conf": 0.85,
            "crit": 2,
            "desc": "Cargo repository field is populated"
          },
          {
            "id": "metadata/package/testing/harness/unit::rust-assert-eq-macro",
            "conf": 0.7,
            "crit": 2,
            "desc": "assert_eq! macro",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "metadata/package/testing/harness/unit::rust-cfg-test",
            "conf": 0.9,
            "crit": 2,
            "desc": "#[cfg(test)] attribute",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "metadata/package/testing/harness/unit::rust-test-attr",
            "conf": 0.9,
            "crit": 2,
            "desc": "Rust synchronous or async test attribute",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "metadata/package/version::cargo-conventional-version",
            "conf": 0.85,
            "crit": 2,
            "desc": "Cargo package uses conventional version"
          },
          {
            "id": "metadata/package/version::cargo-package-version",
            "conf": 0.85,
            "crit": 2,
            "desc": "Cargo package has version"
          },
          {
            "id": "metadata/permission/prose::permission-mandatory-language-english",
            "conf": 0.9,
            "crit": 2,
            "desc": "Forced or mandatory instruction wording",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/permission/telemetry::gecko-data-collection-omitted",
            "conf": 0.95,
            "crit": 2,
            "desc": "Firefox extension omits data collection"
          },
          {
            "id": "micro-behaviors/data/collection/create::rust-collect-call",
            "conf": 0.85,
            "crit": 2,
            "desc": "Rust materializes an iterator with .collect()",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "micro-behaviors/data/control-flow/loop::rust-iter-call",
            "conf": 0.85,
            "crit": 2,
            "desc": "Rust creates an iterator with .iter()",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "metadata/lang/generated::automatically-generated-text",
            "conf": 0.85,
            "crit": 1,
            "desc": "Bare automatically-generated provenance phrase",
            "from": [
              {
                "file": 3
              }
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/content-word::data-access-verb-token",
            "conf": 0.88,
            "crit": 1,
            "desc": "Data-access verb token",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/content-word::english-edit-verb-token",
            "conf": 0.88,
            "crit": 1,
            "desc": "English edit-action verb token",
            "from": [
              {
                "file": 9
              }
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-1",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"the\"",
            "from": [
              {
                "file": 4
              }
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-2",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"and\"",
            "from": [
              {
                "file": 4
              }
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-3",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"that\"",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-4",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"have\"",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-5",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"for\"",
            "from": [
              {
                "file": 4
              }
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-6",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"with\"",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-7",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"this\"",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "micro-behaviors/data/llm/repository-directive::repository-agent-directive-marker",
            "conf": 0.88,
            "crit": 1,
            "desc": "Marks text as an agent directive",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "micro-behaviors/data/serialize/envelope::result-assignment-key",
            "conf": 0.4,
            "crit": 1,
            "desc": "Result field or assignment key",
            "from": [
              {
                "file": 6
              }
            ]
          }
        ]
      },
      {
        "ctx": [
          {
            "b": "boPMAlM!:jx\u003eqg7A%-mNxLzJgBz(aIy?m^3y-)kdvru66A+c?lCYmOwBAnM@zGGDgeKBn(v@2N/vqfQ4lVl*UB-7]6vruj4zxHu0lpigex(d*9wO(0@Byxo9z/fRsz!pbdx\u003eIa3ay/k4wO#Qhe*9-caAIamC4C.qvriM1az\u003eXivj+#fvru6iaAImlAbol2D1?eeaARpd3ug37v}x.5aA7\u003cmx(d*cA==2kxcpS2wftP7By/99vruj3xcqwaA+PDmB0a4vlM/(Px\u003eqg7B0bgmBz\u0026pEz/{7yvR/%)yH.3^x(kKgnKt=!x(+z9ay]hcBAh88B-.h9aAhvtBz\u003eVcy-)?kvrrS6zEE0\u003cwPF#7z/6ulzFrP?BzkVhayX]7Cv+u6ay]hcBzkS5Bp98cC4CY9x\u003eIravR/%)yH.3^x(m#mvqYP#nKt=!y?WJ}BrC7fx\u003eqg7B0bNBvpK6}Bzbkdv@z",
            "ln": 0,
            "col": 1,
            "line": 1
          },
          {
            "b": "aAhvtz!ot$AaJK2aA7\u003cmwQ5rdA=br4ayYe9v@2N/vqfR2efGdIx\u003e7*0vrb{4A+flkx(W=}aARJAAb](owPzQjaA?spx\u003ezSkAb](nw]!q/xjkH(B95KDxK@q@y?WD#BshbLv@DmawO#NiB0bKCvru6k3jo:CwGV5oA=\u003e(lB-I4oCwhejx(k5nxK@q]x\u003c$N7",
            "ln": 388,
            "col": 75,
            "line": 7
          },
          {
            "b": "x\u003eqg7B6{b2A::63azC)twmY*@xkRo\u003eaARJAAb](ux\u003eg=$w]846x\u003c$^)x([Rcw]zYjwQ5rdA=br4aA.:pA=S\u0026QnPV7-y\u002613lB0b:DBS+^AaA.^uy?XibaARpdaA8EwayF[)v\u003ezhbx\u003eqg7B6{b2A::63aA8ocB7Gf0v@#BdwO=Smx(d*cA=-BBAaJI",
            "ln": 542,
            "col": 33,
            "line": 11
          },
          {
            "b": "Bzbkdy*?Q2A=SvBxKM09vR6R5aAIWtBrCWswODfcA+flkx(W^4wO#Qhe^.}gboP{cvL6@/vru743jodyA=L-eBzMjNaARpdayF[)v\u003ezhbx\u003eqg7B6{b2A::63ay/tcByw)3B0bNr",
            "ln": 1006,
            "col": 27,
            "line": 17
          },
          {
            "b": "fkj{qfGgO9wO#3\u0026A=2JdBsxl[nO@A.wO(0@Byxo9z/b[lax@L?v\u003ezhbx\u003eqg7eP+MwwmY^#x(n2Av%qibxMOunB2\u003e%cxk8E3BZ=$kz/4dwzF0*czddm4D2[7szf4vuz/Y=tvrloqx\u003c$N9BAg@7fkUcizzbZkv\u003ezhbx\u003eqg7B1.lqB1/K8By/u2wPzT4zGEr*avy6*zc7d!z3?ydlVl\u003c:A:-E1aARp9BrCylC4C.qB-7-3AV/EqwGUh!z/Y=tvrloqx\u003c$NTc$)Y",
            "ln": 1307,
            "col": 28,
            "line": 27
          },
          {
            "b": "x(!wsnKt=!Bzbxewg.+eA==NHv@b\u003c\u003czGG}xBzb98ayPq4ay/tbAa9\u003c5vR/P#CwhejayF[)v\u003ez.xu[JN8z/(zdxM53fwftq%Cvt=rayPz6x(\u003eFtxK@r2ze:r5zdNQbvruj4zxJ\u003efayPekaARphA+3+vvrcEnay/C2By^6EnOf8\u003cz/)govrMi8vg3HXx\u003eqg7aARp9BrC\u003cEBTHYxy?WV@aARJAvR3V\u003cwmPmZaARJABzbxfaz++kBsXLNy?m3@wGU]gwO@S0aw+@V3jnvcts?gXat#n6q/uF\u003czdc{/x(mG/c$)Y",
            "ln": 1696,
            "col": 11,
            "line": 37
          }
        ],
        "depth": 1,
        "facts": {
          "metrics": {
            "file": {
              "size": 2344,
              "entropy": 4.81
            },
            "text": {
              "lines": 52,
              "top_char": 116,
              "digit_ratio": 0.01,
              "space_count": 243,
              "char_entropy": 4.81,
              "unique_chars": 64,
              "top_char_null": 0,
              "top_char_ratio": 0.09,
              "avg_line_length": 44.08,
              "max_line_length": 126,
              "empty_line_ratio": 0.27,
              "last_line_length": 24,
              "long_token_count": 1,
              "whitespace_ratio": 0.13,
              "line_length_stddev": 35.4,
              "max_whitespace_run": 1
            },
            "binary": {
              "peak_region_bytes": 2344,
              "peak_region_entropy": 4.91
            }
          }
        },
        "id": 5,
        "mol": "H(Cm)Md",
        "path": "ibc-client-tendermint-types-0.57.0.crate!!ibc-client-tendermint-types-0.57.0/README.md",
        "pid": 0,
        "risk": 3,
        "sha": "fd8749d1ab9a02726d1578e79b84339514a5e19b9a0e099ecad403b690d56401",
        "size": 2344,
        "traits": [
          {
            "id": "metadata/file/naming::uppercase-readme-md-basename",
            "conf": 1.0,
            "crit": 3,
            "desc": "Basename is uppercase README.md"
          },
          {
            "id": "micro-behaviors/communications/http/url/forge::public-code-forge-url",
            "conf": 0.9,
            "crit": 3,
            "desc": "References a public code-forge URL",
            "spans": [
              [
                1371,
                19
              ]
            ]
          },
          {
            "id": "metadata/file/extension/identity::doc-or-config-extension",
            "conf": 1.0,
            "crit": 2,
            "desc": "Text, document, or config extension"
          },
          {
            "id": "metadata/file/extension/identity::json-txt-md-basename",
            "conf": 1.0,
            "crit": 2,
            "desc": "JSON, text, or markdown filename extension"
          },
          {
            "id": "metadata/file/extension/identity::markdown-file-basename",
            "conf": 1.0,
            "crit": 2,
            "desc": "Markdown or documentation file extension"
          },
          {
            "id": "metadata/file/naming::readme-requirements-install-basename",
            "conf": 0.85,
            "crit": 2,
            "desc": "Basename starts README, REQUIREMENTS, or INSTALL"
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english",
            "conf": 0.8,
            "crit": 2,
            "desc": "Contains common English function words",
            "uses": [
              11,
              12,
              13,
              14,
              15,
              16,
              17
            ],
            "spans": [
              [
                590,
                0
              ]
            ]
          },
          {
            "id": "metadata/package/documentation/source::package-doc-reference-basename",
            "conf": 0.9,
            "crit": 2,
            "desc": "Package documentation basename"
          },
          {
            "id": "metadata/package/documentation/source::readme-any-basename",
            "conf": 0.99,
            "crit": 2,
            "desc": "README document basename"
          },
          {
            "id": "metadata/package/documentation/source::readme-markdown-basename",
            "conf": 0.99,
            "crit": 2,
            "desc": "README Markdown basename"
          },
          {
            "id": "metadata/permission/prose::permission-mandatory-language-english",
            "conf": 0.9,
            "crit": 2,
            "desc": "Forced or mandatory instruction wording",
            "spans": [
              [
                436,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-1",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"the\"",
            "spans": [
              [
                157,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-2",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"and\"",
            "spans": [
              [
                182,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-3",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"that\"",
            "spans": [
              [
                270,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-4",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"have\"",
            "spans": [
              [
                1835,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-5",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"for\"",
            "spans": [
              [
                590,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-6",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"with\"",
            "spans": [
              [
                1744,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-7",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"this\"",
            "spans": [
              [
                15,
                0
              ]
            ]
          },
          {
            "id": "micro-behaviors/data/llm/repository-directive::repository-agent-directive-marker",
            "conf": 0.88,
            "crit": 1,
            "desc": "Marks text as an agent directive",
            "spans": [
              [
                1038,
                0
              ]
            ]
          }
        ],
        "type": "markdown"
      },
      {
        "analysis_gaps": [
          "flow-graph-limited"
        ],
        "ctx": [
          {
            "b": "fe1E\u003elVl\u003c:vqfR2aARpdazCXiy?mD{zGGrex(v(iz!pblxK@q=wO#3\u0026A=2JdBrB%Uy?WD#Bw)o\u0026By!\u00265wn=r[x(k5nD2NsE3jp]%wGUG3A+do)v@lfCi=eqIi%{aKwGUG3A+do)B98B-i.1ddzbUK%i%{aKwGUG3A+do)BzkP6iYYVKA::67z/dSz3uZA3azCp{uT[1{wNw}-x\u003eqg7uVZNjwPG)[Ab](sz-P}5f/?u^wOC^\u003cBrC1kaw#S(nm=HFxMMryB-Rapx\u003c$NVv@Dy0uT)[^wO#P%BA}?pB2(uMwOC^\u003cBuo?LB7DFdvQ\u0026+Pz/Pz@v@Dj3x([i6zGGlcD2NtoiY.t3wN/^xi-6\u003cnz!q{!wN/^y3uZA3azCp{uT[1{wNxa?B97=hD2NtoiYZ?)A=k$ViZ^K?z!9N1xgl\u0026Yz/N]DB-Rapx\u003c$NVv@Dy0uUBw0ByfcnAaK8Ki+-bozGGP8x\u003eqsaiYYSwvqfQJwigcvB7DFdvQ\u0026+:A+Px8Bzk]fB2(v3A+f6fwmW!.dMW#WB7DFdvQ\u0026+:A+Px8Bzk]fB2(u=mn=]*l@^bJr7P\u003eXi%{aKwGUX@v{:g}z//[Ui+JwHxkzcui=GaTBz\u003eShw\u0026.$szH1qJB-Rapx\u003c$NVAb](sz-P{[vQ?CWy?WJ}ByPc3wO#QhiY.v]zE^s0ze0)fiY.BsiYYSAx\u003eqg7q/(C\u0026wGUA5aw#S(rbC0sx\u003eqg7q/(C\u0026wJHlwB7DFdvQ\u0026+:A=l5riYZ8Tz//]bB.iYxB-RapBy/u2wPzT4zGE{2v}Yp+zAo*)wi8+Cl0dF/mnuuLnfztZawDo?lUG[xzB[wjwO%NpB-RapBy/u2wPzT4zGE{2BAhIBByfc6A+fr9z!@@Bi-HcxB97w{A+fr9z!@@NA:-E1x(v(ivriL\u003cwO#3\u0026A=2JdBx0p6B97w{A+fr9z!@@NA:-E1x(v(J3uZA3aARgjwmY^#x(n31y?WJ}ByeJ]x\u003eqg7uV{13x\u003ez6\u003cAYMm1Acb/jzGv\u003c1pJgz\u0026z/fRT3jp]%wGUG6vru6wi+rtLz/N)1raP@TwPzT4zGFlZx\u003eqg7mriA!AYTRJB7DF7A::63iYZ}=vpS}\u0026iYY/yvpS}\u0026ayPslrbCfqvpS}\u0026i%{aKwGUG6vru6wi=]y+B97=hxMvW9xM4Y$iYZkXB-RU7xMvW9xM4Y$i%(slBZ=F6z/fSraxg^8l}70FnLSk(lRH6upe\u003eO0r6:FLuSpf8mpf4)oGBpyB98BBjS\u003e}4x\u003c$N8y?WJ}ByPc3wO#Qhe{7VxwmY^#x(n2BB$\u003eQpy?WD#Bw)o\u0026",
            "ln": 0,
            "col": 1,
            "line": 1
          },
          {
            "b": "aAIamwmW!.l$HBJA+O@#x)Kttdp0o9tv.q=x)a5olVl{?efEq@z/fbqavG^IB.rlFp*[x^x\u003c\u003e*DAv-k3AvCf2AckRjB98CBv@@?Vy\u002613lrD8FSBy=Ow3lQDlaAhEj",
            "ln": 1084,
            "col": 55,
            "line": 27
          },
          {
            "b": "B7eY]vrMv6B-GI=vScg3edc!j3nj4=avG^Mx(mH6ay[]5vixSkA=\u003e(lB-I4ow]zYjraP@TwPzT4zGE1hy?WD#BrCTDvru6k3l@++w[LEVBAzKKw[ty)B-I4ojS\u003e}\u0026wPzr)a$K\u003cEwPzHdwHIRhA+5-xi-xQgx\u003c\u003e*(DsXSIB7Gx5wJz\u003euwPIB6x\u003c\u003e/",
            "ln": 1221,
            "col": 17,
            "line": 31
          },
          {
            "b": "wP]m@wO#3\u0026A=2JdBrB%Uy?WD#Bw)o\u0026By!\u00265vTf8ex)a69aAg+fvqPN$wPz\u0026mvqYP#v}YB-yJx?9arR^Wfe1CZw/#hewGU@2A:-/@By/GlayPq4aA?gfx\u003ee?6arR^Hbu[O)y\u0026sICv@b\u003c#AcTG9Bz(88zddscuTW$/B.$YcBAn)p3lQDlaAhEjazbG",
            "ln": 2551,
            "col": 23,
            "line": 78
          },
          {
            "b": "ra{q-B7/Gdwi8+Pmn=]?3lQDlarR^Hatkw\u003cC42ifwGUYdazC.pvqGT*azCZoBzbxfay/tcBy/Ys3lQDlarR^HazCBgB7Gf1e{8bRB97=9wP?T3au.\u003egrc0b5Bw#{]wPIK6y?bN/t18s+aBsCrarR^HarR^HarR!EwPS6nzxIw*AWT)#zE^s0ze0)f",
            "ln": 4057,
            "col": 84,
            "line": 125
          },
          {
            "b": "wGU(ezy]BpAccvjarR^HarR^Hw]zYjyH}=lx(k5mwO+%hB-p#lvpS}RAa9\u003c4e[]AsAWSvVDKp(rarR^HarR^HarUxgazULle{8bFz73?=x(^S)ze:Pxc[co=3lQDlarR^HarR^HarR^HaAz4nB-Ivxmriz%raP@TwPzT4zGFlZx\u003eqg7mriA!AYMlQx(!s",
            "ln": 6513,
            "col": 79,
            "line": 186
          },
          {
            "b": "uVQf$v@\u003cnAA^q2azGG!Bdl/)33lQDlarR^Hatkw\u003cpes?TiV}1iayF8QCscgXwO#P*Byxo5u[rBeayF/4z*C#juUB1+xj#x{aA7\u003cmu[+$hzdNc[B08VAz/=searR^H",
            "ln": 9641,
            "col": 36,
            "line": 282
          },
          {
            "b": "arR^Hfe1CHwGVbpwGV59BrCWsx(+zcwPhW3v{%E\u003cwftF#wO+)1yisPtaAIDzBzb98aA}xtv{%l$Ab](owPzQjay/tcC4CYo3lQDlarR^Hatkw\u003cx(\u003eFbvpK6}x(k5cBAnNBvrS\u0026az/PX4arR^HarR^Hbu[O)y\u0026sICwmY.2wN/d\u003cwN)k}3lQDlarR^H",
            "ln": 10093,
            "col": 5,
            "line": 292
          },
          {
            "b": "qEK=Gz9@bNwO#P*Byxo5j#$-ozEWP}wNxQ(v\u003c\u003e\u00266x\u003eqg7uVQr$By=)L3lQDlarR^HaBKOtarR!P3vJl*bu[U\u0026xdd\u003ekB95\u003cp3t\u003cY(aARgoBAnNK3lQDlaA.:paAIWAwPx*)dMW$AarR^Hbu[X\u0026A+PYdc{}/?zE\u003evwl$G?IxdLf4vrcE7vqFwLdp0o6arR!CBZ=FmBAhIlBrA}!x\u003eqg7q/(C\u0026wL=/QvqQ6dDKp(rarR^HarUSCvJYw}iV{!6vqfQJ",
            "ln": 12927,
            "col": 31,
            "line": 365
          },
          {
            "b": "vrufzaxA5-jx3uxx(mMEed9HxarR^HarUSCvJY8}y\u0026sJ8B-p(1By^GQl2pvQCu5P)vru6i3lQDlaBKO7arR^Hbu]n3B97W{arR^Hw]n-3y?WD#Byf9hvru6/zE[2udiJ%AarR^HarR^Hfe1CowObT]wGUz7b4Lm%vrDyda%p@rBrCHlaAg+fvqPN$wPz\u0026mBz\u0026pxwP-69aARpqz/]Yaz/{dABzblbwGV8aB98EQ3lQDlarR^Haz+Rhay]4}vrDw",
            "ln": 13386,
            "col": 22,
            "line": 383
          },
          {
            "b": "arR^HarV7-3lQDlarR^Haybr%arR^HarR^Vx(n3huUKQ[AWSvzarR^HarR^He[n*oy?m9#c[dj+3lQDlarR^HazbLjaARgoBrCpnaARgoBAnNK3lQDlarR^HarR^Haz+RhaAeC^aARgoBs}JvA:-*ae[nZozE\u003ejBi%(rqarR^HarR^HarR!ywPP58B6\u0026%0B9hqviV}siB9hqvjvr}0wO#P*Byxo5efE]6zE^s0ze0)flU{EFzGFr/A=k$ZauZ\u0026my?WD#Bw)o\u0026By^G]zE[2u3i",
            "ln": 18523,
            "col": 7,
            "line": 514
          },
          {
            "b": "arR^HaAe@wy\u002613luV*r#vru6i3lQDlarR^HarR^HasPwV3lQDlarR^HarR^HayPtjwPz)1wPn\u003ew3lQDlarR^HarR^HarR^HaARgoBs}=CzGGl8vrlGv3lQDlarR^HarR^HarR^Hay/F1A+frmy\u0026?pzB6\u0026\u003c3c[cXOarR^HarR^HarR^HarR^Hb13fXwO#P*Byxo5iY.d\u0026Cpj).w)]y\u0026wN(]}z/M$xwPI@oDWNB/tYaz1xl#W7Eir-FBz8!dA=M8saBudlEiHiHarR^HarR^HarR^HarR^HBy/Jne]C9mwH[fharR^HarR^HarR^HarR!GwPI@CAa9=}zf4sty\u0026si5c[cXOarR^HarR^HarR^HarR^Hv@?",
            "ln": 19010,
            "col": 12,
            "line": 531
          }
        ],
        "depth": 1,
        "facts": {
          "imp": [
            [
              "",
              "Self::new_without_validation"
            ],
            [
              "",
              "client_state.validate"
            ],
            [
              "",
              "Ok"
            ],
            [
              "",
              "Ok"
            ],
            [
              "",
              "core::cmp::max"
            ],
            [
              "",
              "header.height"
            ],
            [
              "",
              "Some"
            ],
            [
              "",
              "Err"
            ],
            [
              "",
              "tendermint::trust_threshold::TrustThresholdFraction::new.map_err"
            ],
            [
              "",
              "tendermint::trust_threshold::TrustThresholdFraction::new"
            ],
            [
              "",
              "core::time::Duration::new"
            ],
            [
              "",
              "Err"
            ],
            [
              "",
              "core::time::Duration::new"
            ],
            [
              "",
              "Err"
            ],
            [
              "",
              "Err"
            ],
            [
              "",
              "core::time::Duration::new"
            ],
            [
              "",
              "Err"
            ],
            [
              "",
              "Err"
            ],
            [
              "",
              "key.trim.is_empty"
            ],
            [
              "",
              "key.trim"
            ],
            [
              "",
              "Err"
            ],
            [
              "",
              "Ok"
            ],
            [
              "",
              "Some"
            ],
            [
              "",
              "Ok"
            ],
            [
              "",
              "ibc_core_host_types::identifiers::ChainId::from_str"
            ],
            [
              "",
              "raw.chain_id.as_str"
            ],
            [
              "",
              "raw.trust_level.ok_or"
            ],
            [
              "",
              "ibc_core_host_types::error::DecodingError::missing_raw_data"
            ],
            [
              "",
              "trust_level.try_into"
            ],
            [
              "",
              "raw.trusting_period.ok_or"
            ],
            [
              "",
              "ibc_core_host_types::error::DecodingError::missing_raw_data"
            ],
            [
              "",
              "ibc_core_host_types::error::DecodingError::invalid_raw_data"
            ],
            [
              "",
              "raw.unbonding_period.ok_or"
            ],
            [
              "",
              "ibc_core_host_types::error::DecodingError::missing_raw_data"
            ],
            [
              "",
              "ibc_core_host_types::error::DecodingError::invalid_raw_data"
            ],
            [
              "",
              "raw.max_clock_drift.ok_or"
            ],
            [
              "",
              "ibc_core_host_types::error::DecodingError::missing_raw_data"
            ],
            [
              "",
              "ibc_core_host_types::error::DecodingError::invalid_raw_data"
            ],
            [
              "",
              "raw.latest_height.ok_or"
            ],
            [
              "",
              "ibc_core_host_types::error::DecodingError::missing_raw_data"
            ],
            [
              "",
              "raw.proof_specs.try_into"
            ],
            [
              "",
              "ibc_core_client_types::Height::try_from.ok"
            ],
            [
              "",
              "ibc_core_client_types::Height::try_from"
            ],
            [
              "",
              "raw.frozen_height.ok_or"
            ],
            [
              "",
              "ibc_core_host_types::error::DecodingError::missing_raw_data"
            ],
            [
              "",
              "Self::new_without_validation"
            ],
            [
              "",
              "Ok"
            ],
            [
              "",
              "value.chain_id.to_string"
            ],
            [
              "",
              "Some"
            ],
            [
              "",
              "value.trust_level.into"
            ],
            [
              "",
              "value.trusting_period.try_into.ok"
            ],
            [
              "",
              "value.trusting_period.try_into"
            ],
            [
              "",
              "value.unbonding_period.try_into.ok"
            ],
            [
              "",
              "value.unbonding_period.try_into"
            ],
            [
              "",
              "value.max_clock_drift.try_into.ok"
            ],
            [
              "",
              "value.max_clock_drift.try_into"
            ],
            [
              "",
              "Some"
            ],
            [
              "",
              "value.frozen_height.map.unwrap_or"
            ],
            [
              "",
              "value.frozen_height.map"
            ],
            [
              "",
              "Some"
            ],
            [
              "",
              "value.latest_height.into"
            ],
            [
              "",
              "value.proof_specs.into"
            ],
            [
              "",
              "raw.type_url.as_str"
            ],
            [
              "",
              "ibc_proto::Protobuf::\u003cRawTmClientState\u003e::decode.map_err"
            ],
            [
              "",
              "ibc_proto::Protobuf::\u003cRawTmClientState\u003e::decode"
            ],
            [
              "",
              "raw.value.as_ref"
            ],
            [
              "",
              "Err"
            ],
            [
              "",
              "TENDERMINT_CLIENT_STATE_TYPE_URL.to_string"
            ],
            [
              "",
              "TENDERMINT_CLIENT_STATE_TYPE_URL.to_string"
            ],
            [
              "",
              "ibc_proto::Protobuf::\u003cRawTmClientState\u003e::encode_vec"
            ],
            [
              "",
              "ibc_core_host_types::identifiers::ChainId::new.unwrap"
            ],
            [
              "",
              "ibc_core_host_types::identifiers::ChainId::new"
            ],
            [
              "",
              "core::time::Duration::new"
            ],
            [
              "",
              "core::time::Duration::new"
            ],
            [
              "",
              "core::time::Duration::new"
            ],
            [
              "",
              "ibc_core_client_types::Height::new.expect"
            ],
            [
              "",
              "ibc_core_client_types::Height::new"
            ],
            [
              "",
              "ibc_core_commitment_types::specs::ProofSpecs::cosmos"
            ],
            [
              "",
              "Vec::new"
            ],
            [
              "",
              "test.params.clone"
            ],
            [
              "",
              "ClientState::new"
            ],
            [
              "",
              "core::cmp::max"
            ],
            [
              "",
              "core::str::FromStr"
            ],
            [
              "",
              "core::time::Duration"
            ],
            [
              "",
              "ibc_core_client_types::proto::v1::Height"
            ],
            [
              "",
              "ibc_core_client_types::Height"
            ],
            [
              "",
              "ibc_core_commitment_types::specs::ProofSpecs"
            ],
            [
              "",
              "ibc_core_host_types::error::DecodingError"
            ],
            [
              "",
              "ibc_core_host_types::identifiers::ChainId"
            ],
            [
              "",
              "ibc_primitives::prelude::*"
            ],
            [
              "",
              "ibc_primitives::ZERO_DURATION"
            ],
            [
              "",
              "ibc_proto::google::protobuf::Any"
            ],
            [
              "",
              "ibc_proto::ibc::lightclients::tendermint::v1::ClientState"
            ],
            [
              "",
              "ibc_proto::Protobuf"
            ],
            [
              "",
              "tendermint::chain::id::MAX_LENGTH"
            ],
            [
              "",
              "tendermint::trust_threshold::TrustThresholdFraction"
            ],
            [
              "",
              "tendermint_light_client_verifier::options::Options"
            ],
            [
              "",
              "crate::error::TendermintClientError"
            ],
            [
              "",
              "crate::header::Header"
            ],
            [
              "",
              "crate::trust_threshold::TrustThreshold"
            ],
            [
              "",
              "super::*"
            ]
          ],
          "mbr": [
            "ChainId::new.unwrap",
            "Height::new.expect",
            "Height::try_from.ok",
            "Protobuf::\u003cRawTmClientState\u003e::decode.map_err",
            "TENDERMINT_CLIENT_STATE_TYPE_URL.to_string",
            "TendermintTrustThresholdFraction::new.map_err",
            "client_state.validate",
            "header.height",
            "key.trim",
            "key.trim.is_empty",
            "p.allow_update",
            "p.id",
            "p.latest_height",
            "p.max_clock_drift",
            "p.proof_specs",
            "p.trust_level",
            "p.trusting_period",
            "p.unbonding_period",
            "p.upgrade_path",
            "raw.allow_update_after_expiry",
            "raw.allow_update_after_misbehaviour",
            "raw.chain_id",
            "raw.chain_id.as_str",
            "raw.frozen_height",
            "raw.frozen_height.ok_or",
            "raw.latest_height",
            "raw.latest_height.ok_or",
            "raw.max_clock_drift",
            "raw.max_clock_drift.ok_or",
            "raw.proof_specs",
            "raw.proof_specs.try_into",
            "raw.trust_level",
            "raw.trust_level.ok_or",
            "raw.trusting_period",
            "raw.trusting_period.ok_or",
            "raw.type_url",
            "raw.type_url.as_str",
            "raw.unbonding_period",
            "raw.unbonding_period.ok_or",
            "raw.upgrade_path",
            "raw.value",
            "raw.value.as_ref",
            "test.params",
            "test.params.clone",
            "trust_level.try_into",
            "value.allow_update",
            "value.allow_update.after_expiry",
            "value.allow_update.after_misbehaviour",
            "value.chain_id",
            "value.chain_id.to_string",
            "value.frozen_height",
            "value.frozen_height.map",
            "value.frozen_height.map.unwrap_or",
            "value.latest_height",
            "value.latest_height.into",
            "value.max_clock_drift",
            "value.max_clock_drift.try_into",
            "value.max_clock_drift.try_into.ok",
            "value.proof_specs",
            "value.proof_specs.into",
            "value.trust_level",
            "value.trust_level.into",
            "value.trusting_period",
            "value.trusting_period.try_into",
            "value.trusting_period.try_into.ok",
            "value.unbonding_period",
            "value.unbonding_period.try_into",
            "value.unbonding_period.try_into.ok",
            "value.upgrade_path"
          ],
          "tgt": [
            "ClientState::new",
            "Err",
            "Ok",
            "Self::new_without_validation",
            "Some",
            "TENDERMINT_CLIENT_STATE_TYPE_URL.to_string",
            "Vec::new",
            "client_state.validate",
            "core::cmp::max",
            "core::time::Duration::new",
            "header.height",
            "ibc_core_client_types::Height::new",
            "ibc_core_client_types::Height::new.expect",
            "ibc_core_client_types::Height::try_from",
            "ibc_core_client_types::Height::try_from.ok",
            "ibc_core_commitment_types::specs::ProofSpecs::cosmos",
            "ibc_core_host_types::error::DecodingError::invalid_raw_data",
            "ibc_core_host_types::error::DecodingError::missing_raw_data",
            "ibc_core_host_types::identifiers::ChainId::from_str",
            "ibc_core_host_types::identifiers::ChainId::new",
            "ibc_core_host_types::identifiers::ChainId::new.unwrap",
            "ibc_proto::Protobuf::\u003cRawTmClientState\u003e::decode",
            "ibc_proto::Protobuf::\u003cRawTmClientState\u003e::decode.map_err",
            "ibc_proto::Protobuf::\u003cRawTmClientState\u003e::encode_vec",
            "key.trim",
            "key.trim.is_empty",
            "raw.chain_id.as_str",
            "raw.frozen_height.ok_or",
            "raw.latest_height.ok_or",
            "raw.max_clock_drift.ok_or",
            "raw.proof_specs.try_into",
            "raw.trust_level.ok_or",
            "raw.trusting_period.ok_or",
            "raw.type_url.as_str",
            "raw.unbonding_period.ok_or",
            "raw.value.as_ref",
            "tendermint::trust_threshold::TrustThresholdFraction::new",
            "tendermint::trust_threshold::TrustThresholdFraction::new.map_err",
            "test.params.clone",
            "trust_level.try_into",
            "value.chain_id.to_string",
            "value.frozen_height.map",
            "value.frozen_height.map.unwrap_or",
            "value.latest_height.into",
            "value.max_clock_drift.try_into",
            "value.max_clock_drift.try_into.ok",
            "value.proof_specs.into",
            "value.trust_level.into",
            "value.trusting_period.try_into",
            "value.trusting_period.try_into.ok",
            "value.unbonding_period.try_into",
            "value.unbonding_period.try_into.ok"
          ],
          "funcs": [
            [
              "new_without_validation",
              1845
            ],
            [
              "new",
              2692
            ],
            [
              "with_header",
              3490
            ],
            [
              "with_frozen_height",
              3702
            ],
            [
              "validate",
              3846
            ],
            [
              "refresh_time",
              6800
            ],
            [
              "as_light_client_options",
              7023
            ],
            [
              "chain_id",
              7305
            ],
            [
              "is_frozen",
              7376
            ],
            [
              "zero_custom_fields",
              7527
            ],
            [
              "try_from",
              7991
            ],
            [
              "from",
              10836
            ],
            [
              "try_from",
              12300
            ],
            [
              "from",
              12770
            ],
            [
              "client_state_new",
              13466
            ]
          ],
          "metrics": {
            "ast": {
              "op.eq": 1,
              "op.ge": 1,
              "op.le": 3,
              "op.ne": 1,
              "op.div": 1,
              "op.mul": 1,
              "max_depth": 18,
              "call_count": 102,
              "node_count": 3791,
              "member_count": 69,
              "op_density.eq": 0,
              "op_density.ge": 0,
              "op_density.le": 0,
              "op_density.ne": 0,
              "op_density.div": 0,
              "op_density.mul": 0,
              "max_member_depth": 4
            },
            "file": {
              "size": 19352,
              "entropy": 4.47
            },
            "text": {
              "lines": 544,
              "top_char": 101,
              "digit_ratio": 0.01,
              "space_count": 5906,
              "char_entropy": 4.47,
              "unique_chars": 88,
              "top_char_null": 0,
              "import_density": 3.68,
              "string_density": 0.08,
              "top_char_ratio": 0.06,
              "avg_line_length": 34.57,
              "max_line_length": 155,
              "empty_line_ratio": 0.1,
              "last_line_length": 1,
              "long_token_count": 2,
              "whitespace_ratio": 0.33,
              "identifier_density": 1.54,
              "line_length_stddev": 25.67,
              "max_whitespace_run": 1,
              "encoded_string_ratio": 0.02,
              "normalized_import_count": 0.86,
              "normalized_string_count": 1.76,
              "repeated_char_sequences": 272,
              "suspicious_string_ratio": 0.02,
              "suspicious_comment_ratio": 0.16,
              "normalized_function_count": 0.64,
              "imports_to_functions_ratio": 1.33,
              "strings_to_functions_ratio": 2.73,
              "suspicious_identifier_ratio": 0.02,
              "normalized_unique_identifiers": 18.82,
              "identifiers_to_functions_ratio": 11.4
            },
            "binds": {
              "count": 16
            },
            "binary": {
              "peak_region_bytes": 8192,
              "peak_region_entropy": 4.84
            },
            "source": {
              "class_count": 4,
              "function_count": 13
            },
            "imports": {
              "count": 20,
              "aliased": 5,
              "wildcard": 2,
              "third_party_count": 20,
              "third_party_ratio": 1
            },
            "strings": {
              "bytes": 1302,
              "count": 41,
              "shell": 1,
              "avg_length": 31.76,
              "max_length": 88,
              "path_count": 1,
              "avg_entropy": 3.43,
              "entropy_stddev": 1.09,
              "base64_candidates": 1
            },
            "comments": {
              "chars": 1566,
              "count": 25,
              "lines": 25,
              "base64": 2,
              "url_count": 2,
              "high_entropy": 2,
              "to_code_ratio": 0.05
            },
            "functions": {
              "count": 17,
              "density": 2.76,
              "avg_params": 2.2,
              "code_ratio": 0.8,
              "max_params": 10,
              "length_stddev": 41.33,
              "over_100_lines": 1,
              "avg_name_length": 11.47,
              "no_params_count": 1,
              "avg_length_lines": 29.07,
              "max_length_lines": 156,
              "min_length_lines": 3,
              "many_params_count": 2,
              "high_entropy_names": 3,
              "single_char_params": 1,
              "avg_param_name_length": 9.42
            },
            "identifiers": {
              "count": 836,
              "unique": 171,
              "avg_length": 9.47,
              "max_length": 32,
              "min_length": 1,
              "avg_entropy": 2.58,
              "reuse_ratio": 0.2,
              "length_stddev": 6.49,
              "has_digit_ratio": 0.01,
              "sequential_names": 4,
              "single_char_count": 3,
              "single_char_ratio": 0.02,
              "high_entropy_count": 20,
              "high_entropy_ratio": 0.12,
              "all_lowercase_ratio": 0.69,
              "all_uppercase_ratio": 0.03,
              "numeric_suffix_count": 1
            }
          }
        },
        "id": 6,
        "mol": "Md(Pa)",
        "path": "ibc-client-tendermint-types-0.57.0.crate!!ibc-client-tendermint-types-0.57.0/src/client_state.rs",
        "pid": 0,
        "risk": 3,
        "sha": "59100a39cbd6284dbc324c36fc44895f59367b9d2f13c0813d92b8ee24f0a157",
        "size": 19352,
        "traits": [
          {
            "id": "metadata/package/testing/harness/unit::rust-test",
            "conf": 0.95,
            "crit": 3,
            "desc": "Rust test marker or harness",
            "uses": [
              25,
              26
            ],
            "spans": [
              [
                12991,
                12
              ],
              [
                13450,
                11
              ]
            ]
          },
          {
            "id": "metadata/file/comment::source-comment-bytes-over-300",
            "conf": 0.92,
            "crit": 2,
            "desc": "Source has over 300 comment bytes"
          },
          {
            "id": "metadata/file/extension/identity::rust-source-extension",
            "conf": 0.98,
            "crit": 2,
            "desc": "Rust source filename extension"
          },
          {
            "id": "metadata/import/rust/core/cmp/max::core/cmp/max",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports core::cmp::max",
            "spans": [
              [
                82,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/core/str/fromstr::core/str/fromstr",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports core::str::FromStr",
            "spans": [
              [
                102,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/core/time/duration::core/time/duration",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports core::time::Duration",
            "spans": [
              [
                126,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/crate/error/tendermintclienterror::crate/error/tendermintclienterror",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports crate::error::TendermintClientError",
            "spans": [
              [
                810,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/crate/header/header::TmHeader",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports crate::header::Header as TmHeader",
            "spans": [
              [
                851,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/crate/trust_threshold/trustthreshold::crate/trust_threshold/trustthreshold",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports crate::trust_threshold::TrustThreshold",
            "spans": [
              [
                890,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/ibc_core_client_types/height::ibc_core_client_types/height",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_core_client_types::Height",
            "spans": [
              [
                212,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/ibc_core_client_types/proto/v1/height::RawHeight",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_core_client_types::proto::v1::Height as RawHeight",
            "spans": [
              [
                153,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/ibc_core_commitment_types/specs/proofspecs::ibc_core_commitment_types/specs/proofspecs",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_core_commitment_types::specs::ProofSpecs",
            "spans": [
              [
                247,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/ibc_core_host_types/error/decodingerror::ibc_core_host_types/error/decodingerror",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_core_host_types::error::DecodingError",
            "spans": [
              [
                297,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/ibc_core_host_types/identifiers/chainid::ibc_core_host_types/identifiers/chainid",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_core_host_types::identifiers::ChainId",
            "spans": [
              [
                344,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/ibc_primitives/prelude::ibc_primitives/prelude",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_primitives::prelude::*",
            "spans": [
              [
                391,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/ibc_primitives/zero_duration::ibc_primitives/zero_duration",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_primitives::ZERO_DURATION",
            "spans": [
              [
                423,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/ibc_proto/google/protobuf/any::ibc_proto/google/protobuf/any",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_proto::google::protobuf::Any",
            "spans": [
              [
                458,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/ibc_proto/ibc/lightclients/tendermint/v1/clientstate::RawTmClientState",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_proto::ibc::lightclients::tendermint::v1::ClientState as RawTmClientState",
            "spans": [
              [
                496,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/ibc_proto/protobuf::ibc_proto/protobuf",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_proto::Protobuf",
            "spans": [
              [
                579,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/super::super",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports super::*",
            "spans": [
              [
                13024,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/tendermint/chain/id/max_length::MaxChainIdLen",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports tendermint::chain::id::MAX_LENGTH as MaxChainIdLen",
            "spans": [
              [
                604,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/tendermint/trust_threshold/trustthresholdfraction::TendermintTrustThresholdFraction",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports tendermint::trust_threshold::TrustThresholdFraction as TendermintTrustThresholdFraction",
            "spans": [
              [
                660,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/tendermint_light_client_verifier/options/options::tendermint_light_client_verifier/options/options",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports tendermint_light_client_verifier::options::Options",
            "spans": [
              [
                753,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english",
            "conf": 0.8,
            "crit": 2,
            "desc": "Contains common English function words",
            "uses": [
              30,
              31,
              32,
              33,
              34,
              35
            ],
            "spans": [
              [
                1269,
                0
              ]
            ]
          },
          {
            "id": "metadata/package/testing/harness/unit::rust-assert-eq-macro",
            "conf": 0.7,
            "crit": 2,
            "desc": "assert_eq! macro",
            "spans": [
              [
                19058,
                0
              ]
            ]
          },
          {
            "id": "metadata/package/testing/harness/unit::rust-cfg-test",
            "conf": 0.9,
            "crit": 2,
            "desc": "#[cfg(test)] attribute",
            "spans": [
              [
                12991,
                0
              ]
            ]
          },
          {
            "id": "metadata/package/testing/harness/unit::rust-test-attr",
            "conf": 0.9,
            "crit": 2,
            "desc": "Rust synchronous or async test attribute",
            "spans": [
              [
                13450,
                0
              ]
            ]
          },
          {
            "id": "micro-behaviors/data/collection/create::rust-collect-call",
            "conf": 0.85,
            "crit": 2,
            "desc": "Rust materializes an iterator with .collect()",
            "spans": [
              [
                18571,
                0
              ]
            ]
          },
          {
            "id": "micro-behaviors/data/control-flow/loop::rust-iter-call",
            "conf": 0.85,
            "crit": 2,
            "desc": "Rust creates an iterator with .iter()",
            "spans": [
              [
                6561,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/content-word::data-access-verb-token",
            "conf": 0.88,
            "crit": 1,
            "desc": "Data-access verb token",
            "spans": [
              [
                1116,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-1",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"the\"",
            "spans": [
              [
                13,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-2",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"and\"",
            "spans": [
              [
                2599,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-3",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"that\"",
            "spans": [
              [
                10141,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-5",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"for\"",
            "spans": [
              [
                1269,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-6",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"with\"",
            "spans": [
              [
                19204,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-7",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"this\"",
            "spans": [
              [
                4105,
                0
              ]
            ]
          },
          {
            "id": "micro-behaviors/data/llm/repository-directive::repository-agent-directive-marker",
            "conf": 0.88,
            "crit": 1,
            "desc": "Marks text as an agent directive",
            "spans": [
              [
                9673,
                0
              ]
            ]
          },
          {
            "id": "micro-behaviors/data/serialize/envelope::result-assignment-key",
            "conf": 0.4,
            "crit": 1,
            "desc": "Result field or assignment key",
            "spans": [
              [
                18673,
                0
              ]
            ]
          }
        ],
        "type": "rust"
      },
      {
        "ctx": [
          {
            "b": "fe1E\u003el$G$AzE)(iBzbkdwn=r[x(k5nD2Nsqw]zYjBy/u2wPzT4zGE1mwNPaXA=RM{B-Rapv@Dy0iYZ\u003e\u0026BuhEfl${ZYy*?PuavQr\u003ez/M$eB09}?Bvyj\u003cz/NxKmSir:vruQ5A^Z1RB-Rapv@Dy0iY.t7AYMlJA=k![BAfCI3uZA3azCp{uT[1{wNw}-x\u003eqg7uVZNjwPG)[wPz*fAYMlGy?WD#Bvyj\u003cz/N]DB-Rapx\u003c$NVv@Dy0uT)[^wO#P%BA}?pB2(uMwOC^\u003cBuo?LB7DFdvQ\u0026+Pz/Pz@xM4%luVZNjwPG)[wPz*fAYMlHwN/T?x(mMLA=M8si%{aKwGUX@v{-.:A+eP\u003ez/Z2cBA}?pB2(u@wmYU2x\u003ez6\u003cA=To5lUG[xzB[w23uZA3azCp{uVp41ze19aC4C.Qi=GaJy\u0026%o1iYX-L3uZA3azCp{uVp41ze19aC4C.Qi^TCoBz\u003eb)zdN^gvqP%maxi5(wPI%4ze:[+3uZA3azCp{uVp47Bz\u003ci3xk.Z3y?kT*Ab](sz^)\u003c3iYYMAC@(vQB7DFdvQ\u0026+:A=l5riYZ$:v(=U!x\u003eIa3v@b\u003c\u003czGG}Xi=[}JwmY^#x(n2Ni^9ksi.i*\u003cwmY^7vriL?vrUmNvpS}\u0026i%{aKwGUX@v{:g}z//[Ui-6\u003cnBz\u003eShw\u0026*uxB7DFkA+fumC@!0kp\u0026Zb?BA{/0xkRo\u003enm=juwPxsAp\u0026Zb?BA{[}y?WA*Bz(g#wPStZ3uZA3aARgjwmY^#x(n2Ni:#]zv@1a^B7]o8wN]dYwNPaXAYMlWx\u003eIr{wjQouwmY^y3uZA3aARgjwmY^#x(n2Ni+8\u0026ix(k%)nN@@LB0aC0lUG[xzB[w23uZA3aARgjwmY^#x(n2Ni+9hQAcc1Vi-xZ2gbQ%K3uZA3aARgjwmY^#x(n2Ni=eCGyIWMyi.:gayIWMMvrl9z3uZA3aARgjwmY^#x(n2Ni^a}Fx\u003egT]z/N)1q!p4[vriL(vqGT*vruBdq!p5j3uZA3aARgjwmY^#x(n2Ni^TzaB7^9Erb3hXEld^UB7DFowO#3\u0026A=2JdBye\u0026#xj#x]v@b\u003c\u003czGGlewPzG%x\u003eqrCi=]T^wPG)[DSk3dB97#7ltQNIyG2s-By^0CrC(]0B-RUowi$9Jv@21+vru7ei%(sqB7DF7A::63iYZ?)A=k$Vi-GWdwmY^#x(n2Wy?WD#Bvyj\u003cz/N]D3ugb%ay/tcB95K7mnultqCx.Tr9@f+k$1dtuSpf8mpf4)oGBpyB98BBjS\u003e}4x\u003c$N8y?WJ}ByPc3wO#Qhe{7VxwmY^#x(n2BB$\u003eQuwNPaXAW0NL3l@++w[I",
            "ln": 0,
            "col": 1,
            "line": 1
          },
          {
            "b": "y?WA*Bz(hbB7GCOaxz]!x\u003egT]z/O=/BsXK/fcCvIwGVe8y?WA*Bz(gxB7GCoBzb98aAImfzE)u3nm=juwPwb2arR!CBZ=FnA=(CBwN]dYwOC^\u003cBugKnwOC^\u003cBsXK/fcCvIwGUU$x\u003eIa3aA7\u003cmvixVjB-RUowftL%vpS}\u0026aAIa9zxJzlay/k4wO#Pj",
            "ln": 1273,
            "col": 11,
            "line": 33
          },
          {
            "b": "vTeq6arR^Wfe1CVzGx@vx(mMaBzb98azC{uzddJ@xK#lcBzbkdxKL%}aA}xtxKM6}aAITyA+e=7z/cXcxKLQ)e^-ZzarUSCvJYo2ay/7@v@2B[A=(CBwN]d=wQ5r7C42i3wmoN#A:J)0BuA8PawDA/yIWMMvrl98d\u003cd=7vkoX#as!N5wObv[y\u0026?\u0026?",
            "ln": 4254,
            "col": 78,
            "line": 114
          },
          {
            "b": "azCBgBzbkdw[+*)woe(iw/$I8xk8K2zxJR7vpS}\u0026ayPq4ay/tcB7]YqwO#PjCwhejaARpdaARTDB97#7azbt0y?dPfz!pblxLzJgxK$Q.wPxygarR^HAckRjw]n-mvqGT*vru6/vQTs(v)0pyawDA/yIWMMvrl98d\u003cd=7vkoX#as!N5wObv[y\u0026?\u0026?3lQDlarR^Hasqevy?tj9arR^HdiHiaaw#+",
            "ln": 4858,
            "col": 15,
            "line": 130
          },
          {
            "b": "aA8cuv}Yp+zxJLfAV/Ntx\u003e7*0Bzbxfay/k4wO#PjB-p(1By=OeA%:3jarR^HarSr\u003cayX=2wN({4zyDYBB-RTEvR3W6zddl%wPw]nxKL^3xK$)\u003cxMLwnw/#hewGU(4Cou",
            "ln": 5486,
            "col": 40,
            "line": 142
          },
          {
            "b": "zGG!BdjD!ParR^HarR^HEf}8tarV7tEf{r#z!6#fA+fumC{4CvarR^HB-Rapx\u003c$NVAb]Vfx([6jwPG)[B-.tlB2(uUA+fumC#FJ[v}v.e3lQDlaAhEjaA.:paAIWAwPx*)dMW$AarR^HAckRjB98CBv@@?\u0026A+fumC#FA\u0026zE)uHwNPaXAY+ZTj$7w)vJW0BviwG.xkRo\u003enm=juwPxjY3jm)#arUxnAblT+x(!lfvr\u0026#cz/M%%A+fumC#FA\u0026zu",
            "ln": 8639,
            "col": 72,
            "line": 232
          },
          {
            "b": "DWu(BxKLQ)uUK4iaBwI/aztt2xj#xFaBwIVEsiT?v@Dj3x((xUDWu(GwOC^\u003cBugK\u003eEir@^aBOUZed9HxarR^HarR^HarU-py?tpNe[!*8wmY^lv}Yp+zEm9*efG1By?r",
            "ln": 8998,
            "col": 38,
            "line": 248
          },
          {
            "b": "d13hDy?WA*Bz(hEaA?gfx\u003egT]z/NEswmPZ(B8@=qarR^HarR^HarR^HarR^He[n*oy?m9#c[dj+arR^HarR^HarR^Hx\u003ewG7wPP4[z/65lAb](oz/YGgdiH+@B7Gf1e?![%A=k]nB7GwudiJ%AarR^HarR^HarR^HarR^HzddJ@xDOTvA=k]nB7GwAzEEx[",
            "ln": 9489,
            "col": 21,
            "line": 262
          }
        ],
        "depth": 1,
        "facts": {
          "imp": [
            [
              "",
              "ibc_core_client_types::Height::new.expect"
            ],
            [
              "",
              "ibc_core_client_types::Height::new"
            ],
            [
              "",
              "ibc_core_host_types::identifiers::ChainId::from_str.expect.revision_number"
            ],
            [
              "",
              "ibc_core_host_types::identifiers::ChainId::from_str.expect"
            ],
            [
              "",
              "ibc_core_host_types::identifiers::ChainId::from_str"
            ],
            [
              "",
              "u64::from"
            ],
            [
              "",
              "Ok"
            ],
            [
              "",
              "crate::error::TendermintClientError::InvalidHeaderHeight"
            ],
            [
              "",
              "chain_id.revision_number"
            ],
            [
              "",
              "Err"
            ],
            [
              "",
              "chain_id.to_string"
            ],
            [
              "",
              "Ok"
            ],
            [
              "",
              "Ok"
            ],
            [
              "",
              "Err"
            ],
            [
              "",
              "Err"
            ],
            [
              "",
              "Err"
            ],
            [
              "",
              "crate::error::TendermintClientError::InvalidHeaderHeight"
            ],
            [
              "",
              "Err"
            ],
            [
              "",
              "Ok"
            ],
            [
              "",
              "raw.signed_header.ok_or"
            ],
            [
              "",
              "ibc_core_host_types::error::DecodingError::missing_raw_data"
            ],
            [
              "",
              "ibc_core_host_types::error::DecodingError::invalid_raw_data"
            ],
            [
              "",
              "raw.validator_set.ok_or"
            ],
            [
              "",
              "ibc_core_host_types::error::DecodingError::missing_raw_data"
            ],
            [
              "",
              "ibc_core_host_types::error::DecodingError::invalid_raw_data"
            ],
            [
              "",
              "raw.trusted_height.and_then.ok_or"
            ],
            [
              "",
              "raw.trusted_height.and_then"
            ],
            [
              "",
              "raw_height.try_into.ok"
            ],
            [
              "",
              "raw_height.try_into"
            ],
            [
              "",
              "ibc_core_host_types::error::DecodingError::missing_raw_data"
            ],
            [
              "",
              "raw.trusted_validators.ok_or"
            ],
            [
              "",
              "ibc_core_host_types::error::DecodingError::missing_raw_data"
            ],
            [
              "",
              "ibc_core_host_types::error::DecodingError::invalid_raw_data"
            ],
            [
              "",
              "Ok"
            ],
            [
              "",
              "raw.type_url.as_str"
            ],
            [
              "",
              "ibc_proto::Protobuf::\u003cRawHeader\u003e::decode.map_err"
            ],
            [
              "",
              "ibc_proto::Protobuf::\u003cRawHeader\u003e::decode"
            ],
            [
              "",
              "raw.value.as_ref"
            ],
            [
              "",
              "Err"
            ],
            [
              "",
              "TENDERMINT_HEADER_TYPE_URL.to_string"
            ],
            [
              "",
              "TENDERMINT_HEADER_TYPE_URL.to_string"
            ],
            [
              "",
              "ibc_proto::Protobuf::\u003cRawHeader\u003e::encode_vec"
            ],
            [
              "",
              "Some"
            ],
            [
              "",
              "value.signed_header.into"
            ],
            [
              "",
              "Some"
            ],
            [
              "",
              "value.validator_set.into"
            ],
            [
              "",
              "Some"
            ],
            [
              "",
              "value.trusted_height.into"
            ],
            [
              "",
              "Some"
            ],
            [
              "",
              "value.trusted_next_validator_set.into"
            ],
            [
              "",
              "core::fmt::Display"
            ],
            [
              "",
              "core::fmt::Error"
            ],
            [
              "",
              "core::fmt::Formatter"
            ],
            [
              "",
              "core::str::FromStr"
            ],
            [
              "",
              "ibc_core_client_types::error::ClientError"
            ],
            [
              "",
              "ibc_core_client_types::Height"
            ],
            [
              "",
              "ibc_core_host_types::error::DecodingError"
            ],
            [
              "",
              "ibc_core_host_types::identifiers::ChainId"
            ],
            [
              "",
              "ibc_primitives::prelude::*"
            ],
            [
              "",
              "ibc_primitives::IntoTimestamp"
            ],
            [
              "",
              "ibc_primitives::Timestamp"
            ],
            [
              "",
              "ibc_proto::google::protobuf::Any"
            ],
            [
              "",
              "ibc_proto::ibc::lightclients::tendermint::v1::Header"
            ],
            [
              "",
              "ibc_proto::Protobuf"
            ],
            [
              "",
              "pretty::PrettySignedHeader"
            ],
            [
              "",
              "pretty::PrettyValidatorSet"
            ],
            [
              "",
              "tendermint::block::signed_header::SignedHeader"
            ],
            [
              "",
              "tendermint::chain::Id"
            ],
            [
              "",
              "tendermint::crypto::Sha256"
            ],
            [
              "",
              "tendermint::merkle::MerkleHash"
            ],
            [
              "",
              "tendermint::validator::Set"
            ],
            [
              "",
              "tendermint::Hash"
            ],
            [
              "",
              "tendermint::Time"
            ],
            [
              "",
              "tendermint_light_client_verifier::types::TrustedBlockState"
            ],
            [
              "",
              "tendermint_light_client_verifier::types::UntrustedBlockState"
            ],
            [
              "",
              "crate::error::TendermintClientError"
            ],
            [
              "",
              "ibc_primitives::utils::PrettySlice"
            ],
            [
              "",
              "super::*"
            ]
          ],
          "mbr": [
            "ChainId::from_str.expect",
            "ChainId::from_str.expect.revision_number",
            "Height::new.expect",
            "Protobuf::\u003cRawHeader\u003e::decode.map_err",
            "TENDERMINT_HEADER_TYPE_URL.to_string",
            "chain_id.revision_number",
            "chain_id.to_string",
            "proposer.name",
            "raw.signed_header",
            "raw.signed_header.ok_or",
            "raw.trusted_height",
            "raw.trusted_height.and_then",
            "raw.trusted_height.and_then.ok_or",
            "raw.trusted_validators",
            "raw.trusted_validators.ok_or",
            "raw.type_url",
            "raw.type_url.as_str",
            "raw.validator_set",
            "raw.validator_set.ok_or",
            "raw.value",
            "raw.value.as_ref",
            "raw_height.try_into",
            "raw_height.try_into.ok",
            "validator.address",
            "value.signed_header",
            "value.signed_header.into",
            "value.trusted_height",
            "value.trusted_height.into",
            "value.trusted_next_validator_set",
            "value.trusted_next_validator_set.into",
            "value.validator_set",
            "value.validator_set.into"
          ],
          "tgt": [
            "Err",
            "Ok",
            "Some",
            "TENDERMINT_HEADER_TYPE_URL.to_string",
            "chain_id.revision_number",
            "chain_id.to_string",
            "crate::error::TendermintClientError::InvalidHeaderHeight",
            "ibc_core_client_types::Height::new",
            "ibc_core_client_types::Height::new.expect",
            "ibc_core_host_types::error::DecodingError::invalid_raw_data",
            "ibc_core_host_types::error::DecodingError::missing_raw_data",
            "ibc_core_host_types::identifiers::ChainId::from_str",
            "ibc_core_host_types::identifiers::ChainId::from_str.expect",
            "ibc_core_host_types::identifiers::ChainId::from_str.expect.revision_number",
            "ibc_proto::Protobuf::\u003cRawHeader\u003e::decode",
            "ibc_proto::Protobuf::\u003cRawHeader\u003e::decode.map_err",
            "ibc_proto::Protobuf::\u003cRawHeader\u003e::encode_vec",
            "raw.signed_header.ok_or",
            "raw.trusted_height.and_then",
            "raw.trusted_height.and_then.ok_or",
            "raw.trusted_validators.ok_or",
            "raw.type_url.as_str",
            "raw.validator_set.ok_or",
            "raw.value.as_ref",
            "raw_height.try_into",
            "raw_height.try_into.ok",
            "u64::from",
            "value.signed_header.into",
            "value.trusted_height.into",
            "value.trusted_next_validator_set.into",
            "value.validator_set.into"
          ],
          "funcs": [
            [
              "fmt",
              1594
            ],
            [
              "fmt",
              1733
            ],
            [
              "timestamp",
              2098
            ],
            [
              "height",
              2307
            ],
            [
              "as_untrusted_block_state",
              2672
            ],
            [
              "as_trusted_block_state",
              2919
            ],
            [
              "verify_chain_id_version_matches_height",
              3650
            ],
            [
              "check_trusted_next_validator_set",
              4328
            ],
            [
              "validate_basic",
              4950
            ],
            [
              "try_from",
              6313
            ],
            [
              "try_from",
              7655
            ],
            [
              "from",
              8101
            ],
            [
              "from",
              8330
            ],
            [
              "fmt",
              8863
            ],
            [
              "fmt",
              9282
            ]
          ],
          "metrics": {
            "ast": {
              "op.eq": 1,
              "op.ge": 1,
              "op.ne": 3,
              "max_depth": 20,
              "call_count": 83,
              "node_count": 2461,
              "member_count": 32,
              "op_density.eq": 0,
              "op_density.ge": 0,
              "op_density.ne": 0,
              "max_member_depth": 4
            },
            "file": {
              "size": 10337,
              "entropy": 4.61
            },
            "text": {
              "lines": 279,
              "top_char": 101,
              "digit_ratio": 0,
              "space_count": 2621,
              "char_entropy": 4.61,
              "unique_chars": 79,
              "top_char_null": 0,
              "import_density": 10.04,
              "lines_over_200": 1,
              "string_density": 0.06,
              "top_char_ratio": 0.08,
              "avg_line_length": 36.05,
              "max_line_length": 274,
              "empty_line_ratio": 0.12,
              "last_line_length": 1,
              "whitespace_ratio": 0.28,
              "identifier_density": 1.76,
              "line_length_stddev": 33.39,
              "max_whitespace_run": 2,
              "normalized_import_count": 1.68,
              "normalized_string_count": 1.08,
              "repeated_char_sequences": 101,
              "normalized_function_count": 0.9,
              "imports_to_functions_ratio": 1.87,
              "strings_to_functions_ratio": 1.2,
              "suspicious_identifier_ratio": 0.03,
              "normalized_unique_identifiers": 18.46,
              "identifiers_to_functions_ratio": 10
            },
            "binds": {
              "count": 3
            },
            "binary": {
              "peak_region_bytes": 6144,
              "peak_region_entropy": 4.85
            },
            "source": {
              "class_count": 3,
              "function_count": 10
            },
            "imports": {
              "count": 28,
              "aliased": 4,
              "wildcard": 2,
              "third_party_count": 28,
              "third_party_ratio": 1
            },
            "strings": {
              "bytes": 752,
              "count": 18,
              "avg_length": 41.78,
              "max_length": 96,
              "path_count": 1,
              "avg_entropy": 3.61,
              "entropy_stddev": 0.6
            },
            "comments": {
              "chars": 773,
              "count": 14,
              "lines": 14,
              "to_code_ratio": 0.05
            },
            "functions": {
              "count": 13,
              "density": 5.38,
              "avg_params": 1.6,
              "code_ratio": 0.67,
              "max_params": 4,
              "length_stddev": 8.68,
              "avg_name_length": 12.07,
              "avg_length_lines": 12.53,
              "max_length_lines": 31,
              "min_length_lines": 3,
              "high_entropy_names": 3,
              "single_char_params": 4,
              "avg_param_name_length": 6.38
            },
            "identifiers": {
              "count": 492,
              "unique": 150,
              "avg_length": 9.7,
              "max_length": 38,
              "min_length": 1,
              "avg_entropy": 2.55,
              "reuse_ratio": 0.3,
              "length_stddev": 7.07,
              "has_digit_ratio": 0.02,
              "sequential_names": 5,
              "single_char_count": 5,
              "single_char_ratio": 0.03,
              "high_entropy_count": 19,
              "high_entropy_ratio": 0.13,
              "all_lowercase_ratio": 0.62,
              "all_uppercase_ratio": 0.02,
              "numeric_suffix_count": 3,
              "underscore_prefix_count": 1
            }
          }
        },
        "id": 9,
        "mol": "Md(In)",
        "path": "ibc-client-tendermint-types-0.57.0.crate!!ibc-client-tendermint-types-0.57.0/src/header.rs",
        "pid": 0,
        "risk": 2,
        "sha": "706744de95191814ccf9f5b5c799da3c050e0f2cd2a9bd5a365f38850cd35284",
        "size": 10337,
        "traits": [
          {
            "id": "metadata/import/rust/tendermint/crypto/sha256::tendermint/crypto/sha256",
            "conf": 0.95,
            "crit": 3,
            "desc": "imports tendermint::crypto::Sha256",
            "spans": [
              [
                673,
                26
              ]
            ]
          },
          {
            "id": "metadata/file/comment::source-comment-bytes-over-300",
            "conf": 0.92,
            "crit": 2,
            "desc": "Source has over 300 comment bytes"
          },
          {
            "id": "metadata/file/extension/identity::rust-source-extension",
            "conf": 0.98,
            "crit": 2,
            "desc": "Rust source filename extension"
          },
          {
            "id": "metadata/import/rust/core/fmt/display::core/fmt/display",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports core::fmt::Display",
            "spans": [
              [
                68,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/core/fmt/error::FmtError",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports core::fmt::Error as FmtError",
            "spans": [
              [
                77,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/core/fmt/formatter::core/fmt/formatter",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports core::fmt::Formatter",
            "spans": [
              [
                96,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/core/str/fromstr::core/str/fromstr",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports core::str::FromStr",
            "spans": [
              [
                112,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/crate/error/tendermintclienterror::crate/error/tendermintclienterror",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports crate::error::TendermintClientError",
            "spans": [
              [
                907,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/ibc_core_client_types/error/clienterror::ibc_core_client_types/error/clienterror",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_core_client_types::error::ClientError",
            "spans": [
              [
                137,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/ibc_core_client_types/height::ibc_core_client_types/height",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_core_client_types::Height",
            "spans": [
              [
                184,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/ibc_core_host_types/error/decodingerror::ibc_core_host_types/error/decodingerror",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_core_host_types::error::DecodingError",
            "spans": [
              [
                219,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/ibc_core_host_types/identifiers/chainid::ibc_core_host_types/identifiers/chainid",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_core_host_types::identifiers::ChainId",
            "spans": [
              [
                266,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/ibc_primitives/intotimestamp::ibc_primitives/intotimestamp",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_primitives::IntoTimestamp",
            "spans": [
              [
                362,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/ibc_primitives/prelude::ibc_primitives/prelude",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_primitives::prelude::*",
            "spans": [
              [
                313,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/ibc_primitives/timestamp::ibc_primitives/timestamp",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_primitives::Timestamp",
            "spans": [
              [
                377,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/ibc_primitives/utils/prettyslice::ibc_primitives/utils/prettyslice",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_primitives::utils::PrettySlice",
            "spans": [
              [
                8687,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/ibc_proto/google/protobuf/any::ibc_proto/google/protobuf/any",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_proto::google::protobuf::Any",
            "spans": [
              [
                393,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/ibc_proto/ibc/lightclients/tendermint/v1/header::RawHeader",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_proto::ibc::lightclients::tendermint::v1::Header as RawHeader",
            "spans": [
              [
                431,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/ibc_proto/protobuf::ibc_proto/protobuf",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_proto::Protobuf",
            "spans": [
              [
                502,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/pretty/prettysignedheader::pretty/prettysignedheader",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports pretty::PrettySignedHeader",
            "spans": [
              [
                536,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/pretty/prettyvalidatorset::pretty/prettyvalidatorset",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports pretty::PrettyValidatorSet",
            "spans": [
              [
                556,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/super::super",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports super::*",
            "spans": [
              [
                8736,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/tendermint/block/signed_header/signedheader::tendermint/block/signed_header/signedheader",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports tendermint::block::signed_header::SignedHeader",
            "spans": [
              [
                581,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/tendermint/chain/id::TmChainId",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports tendermint::chain::Id as TmChainId",
            "spans": [
              [
                633,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/tendermint/hash::tendermint/hash",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports tendermint::Hash",
            "spans": [
              [
                802,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/tendermint/merkle/merklehash::tendermint/merkle/merklehash",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports tendermint::merkle::MerkleHash",
            "spans": [
              [
                705,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/tendermint/time::tendermint/time",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports tendermint::Time",
            "spans": [
              [
                808,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/tendermint/validator/set::ValidatorSet",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports tendermint::validator::Set as ValidatorSet",
            "spans": [
              [
                741,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/tendermint_light_client_verifier/types/trustedblockstate::tendermint_light_client_verifier/types/trustedblockstate",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports tendermint_light_client_verifier::types::TrustedBlockState",
            "spans": [
              [
                861,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/tendermint_light_client_verifier/types/untrustedblockstate::tendermint_light_client_verifier/types/untrustedblockstate",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports tendermint_light_client_verifier::types::UntrustedBlockState",
            "spans": [
              [
                880,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english",
            "conf": 0.8,
            "crit": 2,
            "desc": "Contains common English function words",
            "uses": [
              33,
              34,
              35,
              36,
              37,
              38
            ],
            "spans": [
              [
                28,
                0
              ]
            ]
          },
          {
            "id": "micro-behaviors/data/collection/create::rust-collect-call",
            "conf": 0.85,
            "crit": 2,
            "desc": "Rust materializes an iterator with .collect()",
            "spans": [
              [
                9537,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/content-word::english-edit-verb-token",
            "conf": 0.88,
            "crit": 1,
            "desc": "English edit-action verb token",
            "spans": [
              [
                9030,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-1",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"the\"",
            "spans": [
              [
                12,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-3",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"that\"",
            "spans": [
              [
                1321,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-4",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"have\"",
            "spans": [
              [
                4302,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-5",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"for\"",
            "spans": [
              [
                28,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-6",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"with\"",
            "spans": [
              [
                4906,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-7",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"this\"",
            "spans": [
              [
                4933,
                0
              ]
            ]
          }
        ],
        "type": "rust"
      },
      {
        "ctx": [
          {
            "b": "fe1E\u003enKDAdfGh3nraP@TwPzT4zGE0*y?WD#BrCpmAbo95wO#QhayMy5y?WD#BrC:rA+Pc1v{%E[z/cXay?EWbx([39azbLjayYe9v@2N/vqfR2aA}Hkv}W0cB7CXifcIDWxK@q=wO#3\u0026A=2JdBrC7izGxxbB9hKDvqGN{A+PSez7VeuaZn\u00265uVQs1t)./1tv}!]vRGv3B-8new[tsVz!9Adt)./1tvRnTuTX4#AWU*zBsqlxB95\u0026Zay]53C{)fsx(F3piY.z3CxdbhuV*B3wgn%k3l{Y#v}GvXvruQic#J%Bd0f3wBsw:-wmYU7c$v7cAbZ7-i+h@CvqG:#Cv+q(zdN*5z!9]uay/k4AbZ7-i+h@CvqG:#Cv+q(BA}?pB1w:?t)./1tv.q.C{\u003c1xarR!Jvrcm1zFa2w3lQDlaARTrC4\u003ex3uT)I=BAn#uarR^HBAh8sx\u003c\u003e*+zGP/cA+P2\u003cv{%C2B1vUvarR!HzGQ2iwm64/AbP=suT!4:v}xZj3lQDlaA.NAB7F(?ADLYax\u003ez6?vruj4zGvuoarR^HA=(CBuOTq\u0026ia3xgx(v\u003cf3mPl/3uZA3ay/tgwJz\u003e[BAfA6mSJA:q/)4w3jp]%wGUX@v{-.:A+eP\u003ez/Z2cBA}?pB2(u@wmYU2x\u003ez6\u003cA=To5lU{EFzGF\u003c6AaI9r3l@++w[JJ2zH0TLwPI@Aazbg[BAIRnauZ?\u003eB97}pdjFKfwQ5rdA=91fA::63aAITni%(siz!6#2y?WD#Byf9hvru6x3t\u003cY(ay/tcB7GlgB-Q]hByxo5i%]?ywftL%vpS}\u0026i%]?ywft-6B7eY]vrMv6B-GLJzeS@cBAhIBByfc6A+fr9z!@@C3jp-{vJY/mwGUG0x\u003eqg7uVQr$By^G]dMW#RBZ=FoB7DF7z/fSczGx@wuVQr$By^G]dMW#RBZ=FoB7DFcwNPaXAYMlhi%]}HvJY/mwGU\u00267B7eY]vrMv6B-GJ7dMW#RBZ=FoB7DFoA=(CBuVY$4wPIK6y?bN/dMW$AAckRjzeS@cwPz*fAYTQnfe1$3qE}B\u003eCYmOwBAnM@lSkM\u003chY#7hzE^s0ze0)faz++8xMLwby?WD#BrCgoz/3R8x\u003c$N7Ab](sz^TX$A::63e^=MuvJYJawft\u0026iz//[uDKp(rarUSCvJY/mwGUX@v{:g}z//[Ui+-5kiY.7\u003exj#x%y?WD#BAoG7By/u2wPzT4zGE{2dMW#=3jp-{vJYf0zGx[xr7fLImn=\u0026Kpe\u003eN/oI4VFr9@Qcp^)z/cuBoHauZ?\u003efGgO9wO#3\u0026A=2JdBrS^N3nj4=aw#=)B-IwvaARpdaARgjwmY^#x(n2nu{!:AwO#P?D2Nt53ugb%azbHlv@b\u003c\u003czGGlcD2NsydiHiaavx%VwO#P?D2NsqDKp(rarT3/x\u003eqg7rc-B]iYZ\u003e[z/5\u003c5BAe^emnultqCx.Tr9@0^nKVxNuSpf8mjx\u003c2CYmk7BsntdwP?T9azb4@y\u0026Z.dwN/d\u003eB7DFdBshbLC42i3wfJDfEf{ratvRnTd0f3wBsyG5zeS@cBy/JnB0b/parR^HB-RapB9hCkAYMlhi%(rqarR^WfcAY3B9hImB0bNrvrrSlxK@rfvqGT*vruj4zxJUhayEMMx\u003eqg7rc-B]iYZ\u003e[z/5\u003c5BAg+iwn=42zyoJGw)]y\u0026azbLjaARpdaARgjwmY^#x(n2nv@b\u003c\u003czGE1yD2Ns4arR^Hbu]n3B97W{arR^HAckRjw]n-kwPI%2BzUw{y?WD#ByfcnAaHBDaBsCrarR^HarR!ywPP54auZ\u0026my?WD#Bx0K8wJz\u003e:A=k/4B98BJr7fLImn=\u0026Kpe\u003eN/oI4VFr9@Qcp^(/=B-8zzvq)Rzi%)8MarV7tEf]",
            "ln": 0,
            "col": 1,
            "line": 1
          }
        ],
        "depth": 1,
        "facts": {
          "imp": [
            [
              "",
              "ibc_core_host_types::identifiers::ClientType::from_str.expect"
            ],
            [
              "",
              "ibc_core_host_types::identifiers::ClientType::from_str"
            ],
            [
              "",
              "ibc_core_host_types::identifiers::ClientType::from_str.unwrap"
            ],
            [
              "",
              "ibc_core_host_types::identifiers::ClientType::from_str"
            ],
            [
              "",
              "core::str::FromStr"
            ],
            [
              "",
              "ibc_core_host_types::identifiers::ClientType"
            ],
            [
              "",
              "client_state::*"
            ],
            [
              "",
              "consensus_state::*"
            ],
            [
              "",
              "header::*"
            ],
            [
              "",
              "misbehaviour::*"
            ],
            [
              "",
              "trust_threshold::*"
            ],
            [
              "",
              "ibc_proto::ibc::lightclients::tendermint::*"
            ],
            [
              "",
              "super::*"
            ]
          ],
          "mbr": [
            "ClientType::from_str.expect",
            "ClientType::from_str.unwrap"
          ],
          "tgt": [
            "ibc_core_host_types::identifiers::ClientType::from_str",
            "ibc_core_host_types::identifiers::ClientType::from_str.expect",
            "ibc_core_host_types::identifiers::ClientType::from_str.unwrap"
          ],
          "funcs": [
            [
              "client_type",
              1065
            ],
            [
              "test_tm_client_type",
              1360
            ]
          ],
          "metrics": {
            "ast": {
              "max_depth": 10,
              "call_count": 4,
              "node_count": 365,
              "member_count": 2,
              "max_member_depth": 2
            },
            "file": {
              "size": 1470,
              "entropy": 5.07
            },
            "text": {
              "lines": 58,
              "top_char": 101,
              "digit_ratio": 0.01,
              "space_count": 156,
              "char_entropy": 5.07,
              "unique_chars": 66,
              "top_char_null": 0,
              "import_density": 15.52,
              "string_density": 0.05,
              "top_char_ratio": 0.08,
              "avg_line_length": 24.34,
              "max_line_length": 104,
              "empty_line_ratio": 0.19,
              "last_line_length": 1,
              "whitespace_ratio": 0.15,
              "identifier_density": 1.16,
              "line_length_stddev": 25.78,
              "max_whitespace_run": 1,
              "normalized_import_count": 1.18,
              "normalized_string_count": 0.39,
              "suspicious_comment_ratio": 0.2,
              "normalized_function_count": 0.26,
              "imports_to_functions_ratio": 4.5,
              "strings_to_functions_ratio": 1.5,
              "normalized_unique_identifiers": 7.68,
              "identifiers_to_functions_ratio": 22.5
            },
            "binary": {
              "peak_region_bytes": 1470,
              "peak_region_entropy": 5.02
            },
            "source": {
              "function_count": 2
            },
            "imports": {
              "count": 9,
              "wildcard": 7,
              "third_party_count": 9,
              "third_party_ratio": 1
            },
            "strings": {
              "bytes": 46,
              "count": 3,
              "avg_length": 15.33,
              "max_length": 30,
              "avg_entropy": 2.86,
              "entropy_stddev": 0.93
            },
            "comments": {
              "chars": 335,
              "count": 5,
              "lines": 5,
              "high_entropy": 1,
              "to_code_ratio": 0.09
            },
            "functions": {
              "count": 2,
              "density": 3.45,
              "code_ratio": 0.1,
              "avg_name_length": 15,
              "no_params_count": 2,
              "avg_length_lines": 3,
              "max_length_lines": 3,
              "min_length_lines": 3
            },
            "identifiers": {
              "count": 67,
              "unique": 45,
              "avg_length": 9.84,
              "max_length": 22,
              "min_length": 3,
              "avg_entropy": 2.65,
              "reuse_ratio": 0.67,
              "length_stddev": 5.7,
              "has_digit_ratio": 0.02,
              "high_entropy_count": 4,
              "high_entropy_ratio": 0.09,
              "all_lowercase_ratio": 0.91,
              "all_uppercase_ratio": 0.02
            }
          }
        },
        "id": 10,
        "mol": "Md(Pa)",
        "path": "ibc-client-tendermint-types-0.57.0.crate!!ibc-client-tendermint-types-0.57.0/src/lib.rs",
        "pid": 0,
        "risk": 2,
        "sha": "ee951abe902ca2a4a8d47d7557c040749cf83349a94e024968638370bcef1ab8",
        "size": 1470,
        "traits": [
          {
            "id": "metadata/package/testing/harness/unit::rust-test",
            "conf": 0.95,
            "crit": 3,
            "desc": "Rust test marker or harness",
            "uses": [
              13,
              14
            ],
            "spans": [
              [
                1195,
                12
              ],
              [
                1344,
                11
              ]
            ]
          },
          {
            "id": "metadata/file/comment::source-comment-bytes-over-300",
            "conf": 0.92,
            "crit": 2,
            "desc": "Source has over 300 comment bytes"
          },
          {
            "id": "metadata/file/extension/identity::rust-source-extension",
            "conf": 0.98,
            "crit": 2,
            "desc": "Rust source filename extension"
          },
          {
            "id": "metadata/import/rust/client_state::client_state",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports client_state::*",
            "spans": [
              [
                686,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/consensus_state::consensus_state",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports consensus_state::*",
            "spans": [
              [
                711,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/core/str/fromstr::core/str/fromstr",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports core::str::FromStr",
            "spans": [
              [
                461,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/header::header",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports header::*",
            "spans": [
              [
                739,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/ibc_core_host_types/identifiers/clienttype::ibc_core_host_types/identifiers/clienttype",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_core_host_types::identifiers::ClientType",
            "spans": [
              [
                486,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/ibc_proto/ibc/lightclients/tendermint::ibc_proto/ibc/lightclients/tendermint",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_proto::ibc::lightclients::tendermint::*",
            "spans": [
              [
                918,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/misbehaviour::misbehaviour",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports misbehaviour::*",
            "spans": [
              [
                758,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/super::super",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports super::*",
            "spans": [
              [
                1228,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/trust_threshold::trust_threshold",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports trust_threshold::*",
            "spans": [
              [
                783,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english",
            "conf": 0.8,
            "crit": 2,
            "desc": "Contains common English function words",
            "uses": [
              15,
              16,
              17
            ],
            "spans": [
              [
                1254,
                0
              ]
            ]
          },
          {
            "id": "metadata/package/testing/harness/unit::rust-cfg-test",
            "conf": 0.9,
            "crit": 2,
            "desc": "#[cfg(test)] attribute",
            "spans": [
              [
                1195,
                0
              ]
            ]
          },
          {
            "id": "metadata/package/testing/harness/unit::rust-test-attr",
            "conf": 0.9,
            "crit": 2,
            "desc": "Rust synchronous or async test attribute",
            "spans": [
              [
                1344,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-1",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"the\"",
            "spans": [
              [
                103,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-3",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"that\"",
            "spans": [
              [
                1254,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-5",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"for\"",
            "spans": [
              [
                73,
                0
              ]
            ]
          }
        ],
        "type": "rust"
      },
      {
        "ctx": [
          {
            "b": "fe1E\u003el$G$AzE)(iBzbkdze162wOtH}x(wcmaAR)FwGUP6AV/EqwGV8azE^s0ze0)faz++8xMLwby?WD#Bp5v$B7DFdvQ\u0026+Pz/Pz@xM4%luVZNjwPG)[wPz*fAYMlHwN/T?x(mMLA=M8si%{aKwGUX@v{-.:A+eP\u003ez/Z2cBA}?pB2(u@wmYU2x\u003ez6\u003cA=To5lU{EFzGFDXi%{aKwGUX@v{:g}x(dNax)a6eiY.k2wO=H1wJz\u003e4i%{aKwGUX@v{:g}z//[Ui+JwHxkzcui=GaTBz\u003eShw\u0026.$szH1qJB-Rapx\u003c$NVAb](sz-P{[vQ?CWy?WJ}ByPc3wO#QhiY.v]zE^s0ze0)fiY.BsiYY#HB7eY]vrMv6B-FQkB0av?Cth^)vR6jYC4\u003e(qAYTRJB7DFdvQ\u0026+:A=l5riYZ8Tz//]bB.iYxB-RapBy/u2wPzT4zGE{2v@=\u003clBz\u003ci3q!PO{h8WJ6B-RapBy/u2wPzT4zGE{2zdN:6y?kT*o\u003ewuXy?ldCB7^Sx3uZA3ay/C2By^G]wPz*fAYMlXwO#3\u0026A=2JdBvf\u003eUwO#PUA=M8si%{aKwGUG6vru6wi+S8kwmY^xi.i*\u003cwmY^y3jp-{vJYf0zGx[xr7fLImn=\u0026Kpe\u003eN{nMd@Ani{oFpGpq1r9r3^uSx#$iV]+\u003cBAeG!ar\u0026EMvQ?3bx\u003eIa3v@b\u003c\u003czGG}LBy/u2wPzT4zGEHOf!MgmB7eY]vrMt",
            "ln": 0,
            "col": 1,
            "line": 1
          }
        ],
        "depth": 1,
        "facts": {
          "imp": [
            [
              "",
              "Box::new"
            ],
            [
              "",
              "Box::new"
            ],
            [
              "",
              "Err"
            ],
            [
              "",
              "Err"
            ],
            [
              "",
              "Ok"
            ],
            [
              "",
              "raw.client_id.parse"
            ],
            [
              "",
              "raw.header_1.ok_or_else"
            ],
            [
              "",
              "ibc_core_host_types::error::DecodingError::missing_raw_data"
            ],
            [
              "",
              "raw.header_2.ok_or_else"
            ],
            [
              "",
              "ibc_core_host_types::error::DecodingError::missing_raw_data"
            ],
            [
              "",
              "Ok"
            ],
            [
              "",
              "Self::new"
            ],
            [
              "",
              "value.client_id.to_string"
            ],
            [
              "",
              "Some"
            ],
            [
              "",
              "Some"
            ],
            [
              "",
              "raw.type_url.as_str"
            ],
            [
              "",
              "ibc_proto::Protobuf::\u003cRawMisbehaviour\u003e::decode.map_err"
            ],
            [
              "",
              "ibc_proto::Protobuf::\u003cRawMisbehaviour\u003e::decode"
            ],
            [
              "",
              "raw.value.as_ref"
            ],
            [
              "",
              "Err"
            ],
            [
              "",
              "TENDERMINT_MISBEHAVIOUR_TYPE_URL.to_string"
            ],
            [
              "",
              "TENDERMINT_MISBEHAVIOUR_TYPE_URL.to_string"
            ],
            [
              "",
              "ibc_proto::Protobuf::\u003cRawMisbehaviour\u003e::encode_vec"
            ],
            [
              "",
              "ibc_core_host_types::error::DecodingError"
            ],
            [
              "",
              "ibc_core_host_types::identifiers::ClientId"
            ],
            [
              "",
              "ibc_primitives::prelude::*"
            ],
            [
              "",
              "ibc_proto::google::protobuf::Any"
            ],
            [
              "",
              "ibc_proto::ibc::lightclients::tendermint::v1::Misbehaviour"
            ],
            [
              "",
              "ibc_proto::Protobuf"
            ],
            [
              "",
              "tendermint::crypto::Sha256"
            ],
            [
              "",
              "tendermint::merkle::MerkleHash"
            ],
            [
              "",
              "crate::error::TendermintClientError"
            ],
            [
              "",
              "crate::header::Header"
            ]
          ],
          "mbr": [
            "Protobuf::\u003cRawMisbehaviour\u003e::decode.map_err",
            "TENDERMINT_MISBEHAVIOUR_TYPE_URL.to_string",
            "raw.client_id",
            "raw.client_id.parse",
            "raw.header_1",
            "raw.header_1.ok_or_else",
            "raw.header_2",
            "raw.header_2.ok_or_else",
            "raw.type_url",
            "raw.type_url.as_str",
            "raw.value",
            "raw.value.as_ref",
            "value.client_id",
            "value.client_id.to_string",
            "value.header1",
            "value.header2"
          ],
          "tgt": [
            "Box::new",
            "Err",
            "Ok",
            "Self::new",
            "Some",
            "TENDERMINT_MISBEHAVIOUR_TYPE_URL.to_string",
            "ibc_core_host_types::error::DecodingError::missing_raw_data",
            "ibc_proto::Protobuf::\u003cRawMisbehaviour\u003e::decode",
            "ibc_proto::Protobuf::\u003cRawMisbehaviour\u003e::decode.map_err",
            "ibc_proto::Protobuf::\u003cRawMisbehaviour\u003e::encode_vec",
            "raw.client_id.parse",
            "raw.header_1.ok_or_else",
            "raw.header_2.ok_or_else",
            "raw.type_url.as_str",
            "raw.value.as_ref",
            "value.client_id.to_string"
          ],
          "funcs": [
            [
              "new",
              872
            ],
            [
              "client_id",
              1087
            ],
            [
              "header1",
              1161
            ],
            [
              "header2",
              1229
            ],
            [
              "validate_basic",
              1297
            ],
            [
              "try_from",
              2376
            ],
            [
              "from",
              2936
            ],
            [
              "try_from",
              3321
            ],
            [
              "from",
              3791
            ],
            [
              "fmt",
              4059
            ]
          ],
          "metrics": {
            "ast": {
              "op.lt": 1,
              "op.ne": 1,
              "max_depth": 21,
              "call_count": 35,
              "node_count": 1246,
              "member_count": 16,
              "op_density.lt": 0,
              "op_density.ne": 0,
              "max_member_depth": 3
            },
            "file": {
              "size": 4408,
              "entropy": 4.81
            },
            "text": {
              "lines": 146,
              "top_char": 101,
              "digit_ratio": 0.02,
              "space_count": 1006,
              "char_entropy": 4.81,
              "unique_chars": 75,
              "top_char_null": 0,
              "import_density": 6.85,
              "string_density": 0.03,
              "top_char_ratio": 0.08,
              "avg_line_length": 29.19,
              "max_line_length": 99,
              "empty_line_ratio": 0.16,
              "last_line_length": 1,
              "whitespace_ratio": 0.26,
              "identifier_density": 1.89,
              "line_length_stddev": 25.91,
              "max_whitespace_run": 1,
              "normalized_import_count": 0.83,
              "normalized_string_count": 0.41,
              "repeated_char_sequences": 36,
              "normalized_function_count": 0.83,
              "imports_to_functions_ratio": 1,
              "strings_to_functions_ratio": 0.5,
              "suspicious_identifier_ratio": 0.03,
              "normalized_unique_identifiers": 12.8,
              "identifiers_to_functions_ratio": 9.2
            },
            "binds": {
              "count": 3
            },
            "binary": {
              "peak_region_bytes": 3072,
              "peak_region_entropy": 5
            },
            "source": {
              "class_count": 1,
              "function_count": 8
            },
            "imports": {
              "count": 10,
              "aliased": 1,
              "wildcard": 1,
              "third_party_count": 10,
              "third_party_ratio": 1
            },
            "strings": {
              "bytes": 111,
              "count": 5,
              "avg_length": 22.2,
              "max_length": 44,
              "path_count": 1,
              "avg_entropy": 3.24,
              "entropy_stddev": 0.79
            },
            "comments": {
              "chars": 108,
              "count": 2,
              "lines": 2,
              "to_code_ratio": 0.01
            },
            "functions": {
              "count": 9,
              "density": 6.85,
              "avg_params": 1.3,
              "code_ratio": 0.62,
              "max_params": 3,
              "length_stddev": 6.47,
              "avg_name_length": 6.7,
              "avg_length_lines": 9.1,
              "max_length_lines": 25,
              "min_length_lines": 3,
              "single_char_params": 1,
              "numeric_suffix_names": 2,
              "avg_param_name_length": 5.54
            },
            "identifiers": {
              "count": 276,
              "unique": 92,
              "avg_length": 8.22,
              "max_length": 36,
              "min_length": 1,
              "avg_entropy": 2.44,
              "reuse_ratio": 0.33,
              "length_stddev": 5.85,
              "has_digit_ratio": 0.09,
              "sequential_names": 3,
              "single_char_count": 3,
              "single_char_ratio": 0.03,
              "high_entropy_count": 5,
              "high_entropy_ratio": 0.05,
              "all_lowercase_ratio": 0.55,
              "all_uppercase_ratio": 0.03,
              "numeric_suffix_count": 8,
              "underscore_prefix_count": 1
            }
          }
        },
        "id": 11,
        "mol": "Md(In)",
        "path": "ibc-client-tendermint-types-0.57.0.crate!!ibc-client-tendermint-types-0.57.0/src/misbehaviour.rs",
        "pid": 0,
        "risk": 2,
        "sha": "6bdc793fb7e06c3d9a5dfd360b1629bcc65cc4467a78538eadcbad66cbd04acf",
        "size": 4408,
        "traits": [
          {
            "id": "metadata/import/rust/tendermint/crypto/sha256::tendermint/crypto/sha256",
            "conf": 0.95,
            "crit": 3,
            "desc": "imports tendermint::crypto::Sha256",
            "spans": [
              [
                344,
                26
              ]
            ]
          },
          {
            "id": "metadata/file/comment::source-at-most-two-comments",
            "conf": 0.88,
            "crit": 2,
            "desc": "Source has at most two comments"
          },
          {
            "id": "metadata/file/extension/identity::rust-source-extension",
            "conf": 0.98,
            "crit": 2,
            "desc": "Rust source filename extension"
          },
          {
            "id": "metadata/import/rust/crate/error/tendermintclienterror::crate/error/tendermintclienterror",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports crate::error::TendermintClientError",
            "spans": [
              [
                413,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/crate/header/header::crate/header/header",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports crate::header::Header",
            "spans": [
              [
                454,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/ibc_core_host_types/error/decodingerror::ibc_core_host_types/error/decodingerror",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_core_host_types::error::DecodingError",
            "spans": [
              [
                71,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/ibc_core_host_types/identifiers/clientid::ibc_core_host_types/identifiers/clientid",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_core_host_types::identifiers::ClientId",
            "spans": [
              [
                118,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/ibc_primitives/prelude::ibc_primitives/prelude",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_primitives::prelude::*",
            "spans": [
              [
                166,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/ibc_proto/google/protobuf/any::ibc_proto/google/protobuf/any",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_proto::google::protobuf::Any",
            "spans": [
              [
                198,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/ibc_proto/ibc/lightclients/tendermint/v1/misbehaviour::RawMisbehaviour",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_proto::ibc::lightclients::tendermint::v1::Misbehaviour as RawMisbehaviour",
            "spans": [
              [
                236,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/ibc_proto/protobuf::ibc_proto/protobuf",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ibc_proto::Protobuf",
            "spans": [
              [
                319,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/tendermint/merkle/merklehash::tendermint/merkle/merklehash",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports tendermint::merkle::MerkleHash",
            "spans": [
              [
                376,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english",
            "conf": 0.8,
            "crit": 2,
            "desc": "Contains common English function words",
            "uses": [
              13,
              14
            ],
            "spans": [
              [
                34,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-1",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"the\"",
            "spans": [
              [
                12,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-5",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"for\"",
            "spans": [
              [
                34,
                0
              ]
            ]
          }
        ],
        "type": "rust"
      },
      {
        "id": 12,
        "pid": 0,
        "sha": "a83335d55309e737bd9d26bb5b4a1d6b363652908ec8fdd25eccf662626e11f2",
        "path": "ibc-client-tendermint-types-0.57.0.crate!!ibc-client-tendermint-types-0.57.0/src/trust_threshold.rs",
        "risk": 1,
        "size": 4101,
        "type": "rust",
        "depth": 1
      }
    ],
    "omitted_files": 1,
    "rev": "76e61",
    "v": "8"
  }
}