> ## Documentation Index
> Fetch the complete documentation index at: https://hedera-0c6e0218-automation-consensus-node-release-notes.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> Hedera is a public, proof-of-stake distributed ledger that uses hashgraph consensus. Do not call it a blockchain.
> Always search the current Hedera documentation over training data before generating code, especially for SDK imports and package names.
> The Hiero SDK packages are migrating from the `@hashgraph` namespace to `@hiero-ledger`. Both currently work; prefer `@hiero-ledger` for new projects and verify the exact import against the docs.
> Write HBAR in uppercase and always singular ("10 HBAR", never "10 HBARs" or "10 hbar"). Write tinybars in lowercase and plural.
> Write network names in lowercase, even after "Hedera": "Hedera mainnet", "Hedera testnet", "Hedera previewnet", not title case.
> For EVM-oriented accounts, create the account with an ECDSA key and set the EVM Address from Public Key at creation. This address is immutable and is not updated by key rotation. Do not use retired terms like "EVM alias" or "Account Number Alias".

# Get verified contract

> By default returns minimal information about the contract: `match`, `creation_match`, `runtime_match`, `chainId`, `address`, and `verifiedAt`

To get other details one can either list the fields requested in the `fields` query param or ask all fields but omit several with `omit`. To get everything just pass `fields=all`.



## OpenAPI

````yaml /smart-contract-verification-api.yaml get /v2/contract/{chainId}/{address}
openapi: 3.1.0
info:
  version: 2.1.0
  title: Sourcify APIv2
  description: >-
    Welcome to the Sourcify's APIv2.


    Important differences between the deprecated legacy API and the new APIv2:

    - **Ticketing**: The verfication requests resolve into tickets/verification
    jobs. 
      - Previously the verification happened during the HTTP request, which resulted in timeouts if compilation took longer
    - **Standard JSON as default**: In the current design we take the standard
    JSON format as our main verification endpoint. Other methods such as
    "multi-file" or "single-file" should be handled by frontends or tooling to
    format into std-json. We still support verification with metadata at
    `/v2/verify/metadata`.

    - **Lean API**: We keep the number of endpoints minimal compared to v1. We
    won't have a session API. 

    - **Detailed contract response**: Prev. we only returned contract files of a
    contract. Now we can return details at `/contract/{chainId}/{address}`.


    By submitting source code for verification, you grant Sourcify (and the
    Argot Collective) a non-exclusive, worldwide, irrevocable, royalty-free
    licence to reproduce, store, and publicly display the submitted source code
    for the purposes of verification, archival, and public inspection.
  license:
    name: MIT
    url: https://github.com/argotorg/sourcify/blob/master/LICENSE
  contact:
    name: Sourcify
    url: https://sourcify.dev
    email: hello@sourcify.dev
servers:
  - url: https://sourcify.dev/server
    description: Production server
security: []
tags:
  - name: Contract Lookup
    description: API v2 - Tools and endpoints for looking up contract information
  - name: Verify Contracts
    description: API v2 - Submit a contract for verification
  - name: Verification Jobs
    description: API v2 - Check the status of a verification job
  - name: Other
    description: General server endpoints
paths:
  /v2/contract/{chainId}/{address}:
    get:
      tags:
        - Contract Lookup
      summary: Get verified contract
      description: >-
        By default returns minimal information about the contract: `match`,
        `creation_match`, `runtime_match`, `chainId`, `address`, and
        `verifiedAt`


        To get other details one can either list the fields requested in the
        `fields` query param or ask all fields but omit several with `omit`. To
        get everything just pass `fields=all`.
      operationId: get-contract
      parameters:
        - name: fields
          in: query
          description: >-
            Comma seperated fields to include in the response. Can also take
            `all`
          allowReserved: true
          schema:
            type: string
            example: >-
              abi,metadata,creationBytecode.onchainBytecode,deployment.blockNumber,compilation
        - name: omit
          in: query
          description: >-
            Comma seperated fields to NOT include in the response. All fields
            except matching ones will be returned. Can't be used simultanously
            with `fields`.
          allowReserved: true
          schema:
            type: string
            example: >-
              userdoc,devdoc,storageLayout,transientStorageLayout,compilation.sources
        - name: chainId
          in: path
          description: The chainId number of the EVM chain
          required: true
          schema:
            type: string
            pattern: ^\d+$
            minLength: 1
            maxLength: 20
            example: '11155111'
        - name: address
          in: path
          description: >-
            Contract's 20 byte address in hex string with the 0x prefix. Case
            insensitive.
          required: true
          schema:
            type: string
            pattern: (\b0x[a-fA-F0-9]{40}\b)
            minLength: 42
            maxLength: 42
            example: '0x2738d13E81e30bC615766A0410e7cF199FD59A83'
      responses:
        '200':
          description: Example response
          content:
            application/json:
              schema:
                type: object
                allOf:
                  - type: object
                    title: VerifiedContractMinimal
                    properties:
                      match:
                        type: string
                        enum:
                          - match
                          - exact_match
                          - null
                        title: VerificationStatusNullable
                      creationMatch:
                        type: string
                        enum:
                          - match
                          - exact_match
                          - null
                        title: VerificationStatusNullable
                      runtimeMatch:
                        type: string
                        enum:
                          - match
                          - exact_match
                          - null
                        title: VerificationStatusNullable
                      chainId:
                        type: string
                        title: ChainId
                        pattern: ^\d+$
                        minLength: 1
                        maxLength: 20
                        example: '11155111'
                      address:
                        type: string
                        title: Address
                        description: >-
                          Contract Address in hex string. Can be checksummed or
                          not (i.e. can contain capital letters)
                        pattern: (\b0x[a-fA-F0-9]{40}\b)
                        example: '0xDFEBAd708F803af22e81044aD228Ff77C83C935c'
                      verifiedAt:
                        type: string
                        format: date-time
                        example: '2024-07-24T12:00:00Z'
                      matchId:
                        type: string
                        example: '3266227'
                    required:
                      - match
                      - creationMatch
                      - runtimeMatch
                      - chainId
                      - address
                  - type: object
                    properties:
                      creationBytecode:
                        type: object
                        title: CreationBytecodeResponse
                        properties:
                          onchainBytecode:
                            type: string
                            title: BytecodeString
                            pattern: ^0x([0-9|a-f][0-9|a-f])*$
                            example: >-
                              0x608060405234801561001057600080fd5b5060043610610036570565b6000819050919050565b600080fd5b61010c816100f4565b811461011757600080fd5b5056fea264697066735821220404e37f487a89a932dca5e77faaf6ca2de3b991f93d230604b1b8daaef64766264736f6c63430008070033
                          recompiledBytecode:
                            type: string
                            title: BytecodeString
                            pattern: ^0x([0-9|a-f][0-9|a-f])*$
                            example: >-
                              0x608060405234801561001057600080fd5b5060043610610036570565b6000819050919050565b600080fd5b61010c816100f4565b811461011757600080fd5b5056fea264697066735821220404e37f487a89a932dca5e77faaf6ca2de3b991f93d230604b1b8daaef64766264736f6c63430008070033
                          sourceMap:
                            description: >-
                              Solidity source maps are strings, Vyper source
                              maps are objects.
                            oneOf:
                              - type: string
                              - type: object
                          linkReferences:
                            type: object
                            title: LinkReferences
                            properties:
                              id:
                                type: object
                                additionalProperties:
                                  type: object
                                  additionalProperties:
                                    type: array
                                    items:
                                      type: object
                                      title: LinkReference
                                      properties:
                                        start:
                                          type: integer
                                        length:
                                          type: string
                                      examples:
                                        - start: 3078
                                          length: 20
                            examples:
                              - contracts/AmplificationUtils.sol:
                                  AmplificationUtils:
                                    - start: 3078
                                      length: 20
                                contracts/SwapUtils.sol:
                                  SwapUtils:
                                    - start: 2931
                                      length: 20
                          cborAuxdata:
                            allOf:
                              - type: object
                                title: CborAuxdataObject
                                additionalProperties:
                                  type: object
                                  properties:
                                    value:
                                      type: string
                                      example: >-
                                        0xa26469706673582212201e80049ede18eadf4ab7f0dea2c32f2375c33b5aef0b1a16cc5223dbc681559364736f6c63430007060033
                                    offset:
                                      type: integer
                                      example: 5471
                                examples:
                                  - '1':
                                      value: >-
                                        0xa2646970667358221220d6808f0352d5e503f1f878b19b1bf46c893bac1e20b3c51884efb58a87435b5564736f6c634300080a0033
                                      offset: 18685
                                    '2':
                                      value: >-
                                        0xa264697066735822122017bf4253b73b339897d7c117916781f30b434e6caa783b20eb15065469814dcf64736f6c634300080a0033
                                      offset: 18465
                              - description: >-
                                  CborAuxdata that is found on the recompiled
                                  bytecode.
                          transformations:
                            type: array
                            title: CreationTransformations
                            examples:
                              - - id: '1'
                                  type: replace
                                  offset: 18040
                                  reason: cborAuxdata
                                - type: insert
                                  offset: 6183
                                  reason: constructorArguments
                                - id: sources/lib/MyLib.sol:MyLib
                                  type: replace
                                  offset: 582
                                  reason: library
                            items:
                              type: object
                              properties:
                                id:
                                  type: string
                                  description: >-
                                    Does not exist on `constructorArguments`.
                                    Used to find the corresponding value of the
                                    Transformation in the TransformationValues
                                    dictionary
                                type:
                                  type: string
                                  enum:
                                    - replace
                                    - insert
                                  description: >-
                                    `insert` when the transformation value is
                                    appended to the bytecode e.g. constructor
                                    arguments
                                offset:
                                  type: integer
                                  example: 1322
                                reason:
                                  type: string
                                  enum:
                                    - cborAuxdata
                                    - library
                                    - constructorArguments
                                  description: >-
                                    Keep in mind the `library` reason is
                                    singular here but plural in the
                                    TransformationValues dictionary: `libraries`
                              required:
                                - type
                                - offset
                                - reason
                          transformationValues:
                            type: object
                            title: CreationTransformationValues
                            properties:
                              libraries:
                                type: object
                                additionalProperties:
                                  type: string
                                  title: AddressLowercase
                                  description: Contract Address in hex string
                                  pattern: (\b0x[a-f0-9]{40}\b)
                                  example: '0x40b70a4904fad0ff86f8c901b231eac759a0ebb0'
                              constructorArguments:
                                type: string
                                title: HexString
                                pattern: ^0x([0-9|a-f][0-9|a-f])*$
                                example: '0x1a2b3c4d'
                              cborAuxdata:
                                type: object
                                description: >-
                                  Different format than the `cborAuxdata` field
                                  under the bytecode object. 


                                  Will be here only if there was a
                                  transformation on the cborAuxdata. If
                                  cborAuxdatas matched, there won't be a
                                  transformation.
                                additionalProperties:
                                  type: string
                                  title: HexString
                                  pattern: ^0x([0-9|a-f][0-9|a-f])*$
                                  example: '0x1a2b3c4d'
                            examples:
                              - libraries:
                                  sources/lib/MyLib.sol:MyLib: '0x40b70a4904fad0ff86f8c901b231eac759a0ebb0'
                                constructorArguments: >-
                                  0x00000000000000000000000085fe79b998509b77bf10a8bd4001d58475d29386
                                cborAuxdata:
                                  '0': >-
                                    0xa26469706673582212201c37bb166aa1bc4777a7471cda1bbba7ef75600cd859180fa30d503673b99f0264736f6c63430008190033
                      runtimeBytecode:
                        type: object
                        title: RuntimeBytecodeResponse
                        properties:
                          onchainBytecode:
                            type: string
                            title: BytecodeString
                            pattern: ^0x([0-9|a-f][0-9|a-f])*$
                            example: >-
                              0x608060405234801561001057600080fd5b5060043610610036570565b6000819050919050565b600080fd5b61010c816100f4565b811461011757600080fd5b5056fea264697066735821220404e37f487a89a932dca5e77faaf6ca2de3b991f93d230604b1b8daaef64766264736f6c63430008070033
                          recompiledBytecode:
                            type: string
                            title: BytecodeString
                            pattern: ^0x([0-9|a-f][0-9|a-f])*$
                            example: >-
                              0x608060405234801561001057600080fd5b5060043610610036570565b6000819050919050565b600080fd5b61010c816100f4565b811461011757600080fd5b5056fea264697066735821220404e37f487a89a932dca5e77faaf6ca2de3b991f93d230604b1b8daaef64766264736f6c63430008070033
                          sourceMap:
                            description: >-
                              Solidity source maps are strings, Vyper source
                              maps are objects.
                            oneOf:
                              - type: string
                              - type: object
                          linkReferences:
                            type: object
                            title: LinkReferences
                            properties:
                              id:
                                type: object
                                additionalProperties:
                                  type: object
                                  additionalProperties:
                                    type: array
                                    items:
                                      type: object
                                      title: LinkReference
                                      properties:
                                        start:
                                          type: integer
                                        length:
                                          type: string
                                      examples:
                                        - start: 3078
                                          length: 20
                            examples:
                              - contracts/AmplificationUtils.sol:
                                  AmplificationUtils:
                                    - start: 3078
                                      length: 20
                                contracts/SwapUtils.sol:
                                  SwapUtils:
                                    - start: 2931
                                      length: 20
                          cborAuxdata:
                            allOf:
                              - type: object
                                title: CborAuxdataObject
                                additionalProperties:
                                  type: object
                                  properties:
                                    value:
                                      type: string
                                      example: >-
                                        0xa26469706673582212201e80049ede18eadf4ab7f0dea2c32f2375c33b5aef0b1a16cc5223dbc681559364736f6c63430007060033
                                    offset:
                                      type: integer
                                      example: 5471
                                examples:
                                  - '1':
                                      value: >-
                                        0xa2646970667358221220d6808f0352d5e503f1f878b19b1bf46c893bac1e20b3c51884efb58a87435b5564736f6c634300080a0033
                                      offset: 18685
                                    '2':
                                      value: >-
                                        0xa264697066735822122017bf4253b73b339897d7c117916781f30b434e6caa783b20eb15065469814dcf64736f6c634300080a0033
                                      offset: 18465
                              - description: >-
                                  CborAuxdata that is found on the recompiled
                                  bytecode.
                          immutableReferences:
                            type: object
                            additionalProperties:
                              type: array
                              items:
                                type: object
                                title: ImmutableReference
                                properties:
                                  start:
                                    type: integer
                                  length:
                                    type: integer
                          transformations:
                            type: array
                            title: RuntimeTransformations
                            examples:
                              - - id: CriminalDogs.sol:SafeMath
                                  type: replace
                                  offset: 1863
                                  reason: library
                                - id: '1'
                                  type: replace
                                  offset: 2747
                                  reason: cborAuxdata
                                - id: '1466'
                                  type: replace
                                  offset: 18703
                                  reason: immutable
                                - id: '1466'
                                  type: replace
                                  offset: 18939
                                  reason: immutable
                                - type: replace
                                  offset: 1
                                  reason: callProtection
                            items:
                              type: object
                              properties:
                                id:
                                  type: string
                                  description: >-
                                    Does not exist on `callProtection`. Used to
                                    find the corresponding value of the
                                    Transformation in the TransformationValues
                                    dictionary
                                type:
                                  const: replace
                                  description: >-
                                    Runtime bytecode transformations won't have
                                    `insert`, because runtime does not have
                                    constructor arguments to be appended.
                                offset:
                                  type: integer
                                  example: 1322
                                reason:
                                  type: string
                                  enum:
                                    - cborAuxdata
                                    - library
                                    - immutable
                                    - callProtection
                                  description: >-
                                    Keep in mind the `library` and `immutable`
                                    reasons are singular here but plural in the
                                    TransformationValues dictionary: `libraries`
                                    and `immutables`
                              required:
                                - type
                                - offset
                                - reason
                          transformationValues:
                            type: object
                            title: CreationTransformationValues
                            properties:
                              libraries:
                                type: object
                                additionalProperties:
                                  type: string
                                  title: AddressLowercase
                                  description: Contract Address in hex string
                                  pattern: (\b0x[a-f0-9]{40}\b)
                                  example: '0x40b70a4904fad0ff86f8c901b231eac759a0ebb0'
                              immutables:
                                type: object
                                additionalProperties:
                                  type: string
                                  title: HexString
                                  pattern: ^0x([0-9|a-f][0-9|a-f])*$
                                  example: '0x1a2b3c4d'
                              cborAuxdata:
                                type: object
                                description: >-
                                  Different format than the `cborAuxdata` field
                                  under the bytecode object. 


                                  Will be here only if there was a
                                  transformation on the cborAuxdata. If
                                  cborAuxdatas matched, there won't be a
                                  transformation.
                                additionalProperties:
                                  type: string
                                  title: HexString
                                  pattern: ^0x([0-9|a-f][0-9|a-f])*$
                                  example: '0x1a2b3c4d'
                              callProtection:
                                type: string
                                title: AddressLowercase
                                description: Contract Address in hex string
                                pattern: (\b0x[a-f0-9]{40}\b)
                                example: '0x40b70a4904fad0ff86f8c901b231eac759a0ebb0'
                            examples:
                              - libraries:
                                  contracts/order/OrderUtils.sol:OrderUtilsLib: '0x40b70a4904fad0ff86f8c901b231eac759a0ebb0'
                                immutables:
                                  '1466': >-
                                    0x000000000000000000000000000000007f56768de3133034fa730a909003a165
                                cborAuxdata:
                                  '1': >-
                                    0xa26469706673582212201c37bb166aa1bc4777a7471cda1bbba7ef75600cd859180fa30d503673b99f0264736f6c63430008190033
                                callProtection: '0x9deba23b95205127e906108f191a26f5d520896a'
                      deployment:
                        type: object
                        properties:
                          transactionHash:
                            type: string
                            title: Keccak256
                            pattern: (\b0x[a-f0-9]{64}\b)
                            example: >-
                              0xb6ee9d528b336942dd70d3b41e2811be10a473776352009fd73f85604f5ed206
                          blockNumber:
                            type: string
                            example: '21721660'
                          transactionIndex:
                            type: string
                            example: '3'
                          deployer:
                            type: string
                            title: Address
                            description: >-
                              Contract Address in hex string. Can be checksummed
                              or not (i.e. can contain capital letters)
                            pattern: (\b0x[a-fA-F0-9]{40}\b)
                            example: '0xDFEBAd708F803af22e81044aD228Ff77C83C935c'
                      sources:
                        type: object
                        additionalProperties:
                          type: object
                          properties:
                            content:
                              type: string
                      compilation:
                        type: object
                        properties:
                          language:
                            type: string
                            enum:
                              - Solidity
                              - Vyper
                              - Fe
                            title: Language
                            default: Solidity
                          compiler:
                            type: string
                            example: solc
                          compilerVersion:
                            allOf:
                              - type: string
                                title: CompilerVersion
                                pattern: ^v?\d+\.\d+\.\d+.*$
                                example: 0.8.7+commit.e28d00a7
                              - description: >-
                                  The server accepts v prefixed but should only
                                  respond without the v prefix
                          compilerSettings:
                            type: object
                          name:
                            type: string
                            example: MyContract
                          fullyQualifiedName:
                            type: string
                            example: contracts/MyContract.sol:MyContract
                      abi:
                        type: array
                        items:
                          type: object
                      metadata:
                        type: object
                      storageLayout:
                        type: object
                        description: >-
                          Storage layout of the contract. Format differs by
                          language: Solidity uses `{storage: [...], types:
                          {...}}`, Vyper uses `{variableName: {type, slot,
                          n_slots}}`.
                      transientStorageLayout:
                        type: object
                      userdoc:
                        type: object
                      devdoc:
                        type: object
                      sourceIds:
                        type: object
                        description: Same as stdJsonOutput.sources
                        additionalProperties:
                          type: object
                          properties:
                            id:
                              type: integer
                              description: The AST IDs of the sources
                      additionalInput:
                        type: object
                        nullable: true
                        description: >-
                          Additional compiler input fields from the top level of
                          the standard JSON input that are not part of
                          `settings`. Currently contains Vyper's
                          `storage_layout_overrides` when used.
                        properties:
                          storage_layout_overrides:
                            type: object
                            description: >-
                              Vyper storage layout overrides. Keys are source
                              file paths, values map variable names to their
                              storage slot configuration.
                            additionalProperties:
                              type: object
                              additionalProperties:
                                type: object
                                properties:
                                  type:
                                    type: string
                                  slot:
                                    type: integer
                                  n_slots:
                                    type: integer
                      stdJsonInput:
                        type: object
                        description: >-
                          The input fields conforming the compiler standard-JSON
                          format.
                        properties:
                          language:
                            type: string
                            enum:
                              - Solidity
                              - Vyper
                              - Fe
                            title: Language
                            default: Solidity
                          sources:
                            type: object
                            additionalProperties:
                              type: object
                              properties:
                                content:
                                  type: string
                                keccak256:
                                  type: string
                                  title: Keccak256
                                  pattern: (\b0x[a-f0-9]{64}\b)
                                  example: >-
                                    0xb6ee9d528b336942dd70d3b41e2811be10a473776352009fd73f85604f5ed206
                          settings:
                            type: object
                      stdJsonOutput:
                        type: object
                        description: >-
                          The outputs conforming the compiler standard JSON
                          format
                        properties:
                          sources:
                            type: object
                            additionalProperties:
                              type: object
                              properties:
                                id:
                                  type: integer
                                  description: The AST IDs of the sources
                          contracts:
                            type: object
                            description: >-
                              Contracts output in the standard JSON format.


                              This will only contain the entry for the
                              compilaton target contract, even if the
                              `outputSelection` was `*`.
                            additionalProperties:
                              type: object
                              additionalProperties:
                                type: object
                                properties:
                                  abi:
                                    type: array
                                    items:
                                      type: object
                                  userdoc:
                                    type: object
                                  devdoc:
                                    type: object
                                  storageLayout:
                                    type: object
                                    description: >-
                                      Storage layout of the contract. Format
                                      differs by language: Solidity uses
                                      `{storage: [...], types: {...}}`, Vyper
                                      uses `{variableName: {type, slot,
                                      n_slots}}`.
                                  transientStorageLayout:
                                    type: object
                                  metadata:
                                    type: string
                                    description: Serialized JSON string
                                  evm:
                                    type: object
                                    properties:
                                      bytecode:
                                        type: object
                                        description: >-
                                          In Sourcify we refer to this field more
                                          explicitly as "creation bytecode"
                                        properties:
                                          sourceMap:
                                            description: >-
                                              Solidity source maps are strings, Vyper
                                              source maps (>= 0.4.0) are objects.
                                            oneOf:
                                              - type: string
                                              - type: object
                                          linkReferences:
                                            type: object
                                            title: LinkReferences
                                            properties:
                                              id:
                                                type: object
                                                additionalProperties:
                                                  type: object
                                                  additionalProperties:
                                                    type: array
                                                    items:
                                                      type: object
                                                      title: LinkReference
                                                      properties:
                                                        start:
                                                          type: integer
                                                        length:
                                                          type: string
                                                      examples:
                                                        - start: 3078
                                                          length: 20
                                            examples:
                                              - contracts/AmplificationUtils.sol:
                                                  AmplificationUtils:
                                                    - start: 3078
                                                      length: 20
                                                contracts/SwapUtils.sol:
                                                  SwapUtils:
                                                    - start: 2931
                                                      length: 20
                                          object:
                                            allOf:
                                              - type: string
                                                title: HexStringWithout0x
                                                pattern: ^([0-9|a-f][0-9|a-f])*$
                                                example: 1a2b3c4d
                                              - description: >-
                                                  Without the 0x prefix, as in the
                                                  compiler output format
                                      deployedBytecode:
                                        type: object
                                        description: >-
                                          In Sourcify we refer to this field more
                                          explicitly as "runtime bytecode"
                                        properties:
                                          sourceMap:
                                            description: >-
                                              Solidity source maps are strings, Vyper
                                              source maps (>= 0.3.8) are objects.
                                            oneOf:
                                              - type: string
                                              - type: object
                                          linkReferences:
                                            type: object
                                            title: LinkReferences
                                            properties:
                                              id:
                                                type: object
                                                additionalProperties:
                                                  type: object
                                                  additionalProperties:
                                                    type: array
                                                    items:
                                                      type: object
                                                      title: LinkReference
                                                      properties:
                                                        start:
                                                          type: integer
                                                        length:
                                                          type: string
                                                      examples:
                                                        - start: 3078
                                                          length: 20
                                            examples:
                                              - contracts/AmplificationUtils.sol:
                                                  AmplificationUtils:
                                                    - start: 3078
                                                      length: 20
                                                contracts/SwapUtils.sol:
                                                  SwapUtils:
                                                    - start: 2931
                                                      length: 20
                                          object:
                                            allOf:
                                              - type: string
                                                title: HexStringWithout0x
                                                pattern: ^([0-9|a-f][0-9|a-f])*$
                                                example: 1a2b3c4d
                                              - description: >-
                                                  Without the 0x prefix, as in the
                                                  compiler output format
                                          immutableReferences:
                                            type: object
                                            additionalProperties:
                                              type: object
                      signatures:
                        type: object
                        description: >-
                          The signatures of the contract grouped by type
                          (function, event, error).
                        properties:
                          function:
                            type: array
                            description: Function signatures
                            items:
                              type: object
                              title: SignatureRepresentations
                              description: >-
                                The text form and hash representations of a
                                signature
                              properties:
                                signature:
                                  type: string
                                  description: The human-readable signature
                                  example: transfer(address,uint256)
                                signatureHash32:
                                  type: string
                                  pattern: ^0x[a-f0-9]{64}$
                                  description: >-
                                    The full 32-byte keccak256 hash of the
                                    signature
                                  example: >-
                                    0xa9059cbb2ab09eb219583f4a59a5d0623ade346d962bcd4e46b11da047c9049b
                                signatureHash4:
                                  type: string
                                  pattern: ^0x[a-f0-9]{8}$
                                  description: >-
                                    The 4-byte selector (first 4 bytes of the
                                    32-byte hash)
                                  example: '0xa9059cbb'
                              required:
                                - signature
                                - signatureHash32
                                - signatureHash4
                          event:
                            type: array
                            description: Event signatures
                            items:
                              type: object
                              title: SignatureRepresentations
                              description: >-
                                The text form and hash representations of a
                                signature
                              properties:
                                signature:
                                  type: string
                                  description: The human-readable signature
                                  example: transfer(address,uint256)
                                signatureHash32:
                                  type: string
                                  pattern: ^0x[a-f0-9]{64}$
                                  description: >-
                                    The full 32-byte keccak256 hash of the
                                    signature
                                  example: >-
                                    0xa9059cbb2ab09eb219583f4a59a5d0623ade346d962bcd4e46b11da047c9049b
                                signatureHash4:
                                  type: string
                                  pattern: ^0x[a-f0-9]{8}$
                                  description: >-
                                    The 4-byte selector (first 4 bytes of the
                                    32-byte hash)
                                  example: '0xa9059cbb'
                              required:
                                - signature
                                - signatureHash32
                                - signatureHash4
                          error:
                            type: array
                            description: Error signatures
                            items:
                              type: object
                              title: SignatureRepresentations
                              description: >-
                                The text form and hash representations of a
                                signature
                              properties:
                                signature:
                                  type: string
                                  description: The human-readable signature
                                  example: transfer(address,uint256)
                                signatureHash32:
                                  type: string
                                  pattern: ^0x[a-f0-9]{64}$
                                  description: >-
                                    The full 32-byte keccak256 hash of the
                                    signature
                                  example: >-
                                    0xa9059cbb2ab09eb219583f4a59a5d0623ade346d962bcd4e46b11da047c9049b
                                signatureHash4:
                                  type: string
                                  pattern: ^0x[a-f0-9]{8}$
                                  description: >-
                                    The 4-byte selector (first 4 bytes of the
                                    32-byte hash)
                                  example: '0xa9059cbb'
                              required:
                                - signature
                                - signatureHash32
                                - signatureHash4
                      proxyResolution:
                        type: object
                        title: ProxyResolution
                        properties:
                          isProxy:
                            type: boolean
                          proxyType:
                            type: string
                            enum:
                              - EIP1167Proxy
                              - FixedProxy
                              - EIP1967Proxy
                              - GnosisSafeProxy
                              - DiamondProxy
                              - PROXIABLEProxy
                              - ZeppelinOSProxy
                              - SequenceWalletProxy
                              - null
                            title: ProxyType
                          implementations:
                            type: array
                            items:
                              type: object
                              properties:
                                name:
                                  type: string
                                  description: >-
                                    Only present if the implementation contract
                                    was verified by Sourcify
                                address:
                                  type: string
                                  title: Address
                                  description: >-
                                    Contract Address in hex string. Can be
                                    checksummed or not (i.e. can contain capital
                                    letters)
                                  pattern: (\b0x[a-fA-F0-9]{40}\b)
                                  example: '0xDFEBAd708F803af22e81044aD228Ff77C83C935c'
                          proxyResolutionError:
                            type: object
                            title: GenericErrorResponse
                            properties:
                              customCode:
                                type: string
                                description: >-
                                  A string token to indicate the reason of the
                                  error
                                example: unsupported_chain
                              message:
                                type: string
                                description: The reasoning of the error
                                example: >-
                                  The chain with chainId 3153212 is not
                                  supported for verification
                              errorId:
                                type: string
                                format: uuid
                            required:
                              - customCode
                              - message
                              - errorId
                            examples:
                              - customCode: unsupported_chain
                                message: >-
                                  The chain with chainId 9429413 is not
                                  supported
                                errorId: 1ac6b91a-0605-4459-93dc-18f210a70192
              examples:
                Full response:
                  value:
                    match: match
                    creationMatch: match
                    runtimeMatch: match
                    chainId: '11155111'
                    address: '0xDFEBAd708F803af22e81044aD228Ff77C83C935c'
                    verifiedAt: '2024-07-24T12:00:00Z'
                    matchId: '3266227'
                    creationBytecode:
                      onchainBytecode: >-
                        0x608060405234801561001057600080fd5b5060043610610036570565b6000819050919050565b600080fd5b61010c816100f4565b811461011757600080fd5b5056fea264697066735821220404e37f487a89a932dca5e77faaf6ca2de3b991f93d230604b1b8daaef64766264736f6c63430008070033
                      recompiledBytecode: >-
                        0x608060405234801561001057600080fd5b5060043610610036570565b6000819050919050565b600080fd5b61010c816100f4565b811461011757600080fd5b5056fea264697066735821220404e37f487a89a932dca5e77faaf6ca2de3b991f93d230604b1b8daaef64766264736f6c63430008070033
                      sourceMap: >-
                        73951:11562:0:-:0;;;;;;;;;;;;-1:-1:-1;63357:7:0;:15;;-1:-1:-1;;63357:15:0;;;73951:11562;;;;;;
                      linkReferences:
                        contracts/AmplificationUtils.sol:
                          AmplificationUtils:
                            - start: 3078
                              length: 20
                        contracts/SwapUtils.sol:
                          SwapUtils:
                            - start: 2931
                              length: 20
                      cborAuxdata:
                        '1':
                          value: >-
                            0xa2646970667358221220d6808f0352d5e503f1f878b19b1bf46c893bac1e20b3c51884efb58a87435b5564736f6c634300080a0033
                          offset: 18685
                        '2':
                          value: >-
                            0xa264697066735822122017bf4253b73b339897d7c117916781f30b434e6caa783b20eb15065469814dcf64736f6c634300080a0033
                          offset: 18465
                      transformations:
                        - id: '1'
                          type: replace
                          offset: 18040
                          reason: cborAuxdata
                        - type: insert
                          offset: 6183
                          reason: constructorArguments
                        - id: sources/lib/MyLib.sol:MyLib
                          type: replace
                          offset: 582
                          reason: library
                      transformationValues:
                        libraries:
                          sources/lib/MyLib.sol:MyLib: '0x40b70a4904fad0ff86f8c901b231eac759a0ebb0'
                        constructorArguments: >-
                          0x00000000000000000000000085fe79b998509b77bf10a8bd4001d58475d29386
                        cborAuxdata:
                          '0': >-
                            0xa26469706673582212201c37bb166aa1bc4777a7471cda1bbba7ef75600cd859180fa30d503673b99f0264736f6c63430008190033
                    runtimeBytecode:
                      onchainBytecode: >-
                        0x608060405234801561001057600080fd5b5060043610610036570565b6000819050919050565b600080fd5b61010c816100f4565b811461011757600080fd5b5056fea264697066735821220404e37f487a89a932dca5e77faaf6ca2de3b991f93d230604b1b8daaef64766264736f6c63430008070033
                      recompiledBytecode: >-
                        0x608060405234801561001057600080fd5b5060043610610036570565b6000819050919050565b600080fd5b61010c816100f4565b811461011757600080fd5b5056fea264697066735821220404e37f487a89a932dca5e77faaf6ca2de3b991f93d230604b1b8daaef64766264736f6c63430008070033
                      sourceMap: >-
                        73951:11562:0:-:0;;;;;;;;;;;;-1:-1:-1;63357:7:0;:15;;-1:-1:-1;;63357:15:0;;;73951:11562;;;;;;
                      linkReferences:
                        contracts/AmplificationUtils.sol:
                          AmplificationUtils:
                            - start: 3078
                              length: 20
                        contracts/SwapUtils.sol:
                          SwapUtils:
                            - start: 2931
                              length: 20
                      cborAuxdata:
                        '1':
                          value: >-
                            0xa2646970667358221220d6808f0352d5e503f1f878b19b1bf46c893bac1e20b3c51884efb58a87435b5564736f6c634300080a0033
                          offset: 18685
                        '2':
                          value: >-
                            0xa264697066735822122017bf4253b73b339897d7c117916781f30b434e6caa783b20eb15065469814dcf64736f6c634300080a0033
                          offset: 18465
                      immutableReferences:
                        '1050':
                          - start: 312
                            length: 32
                          - start: 2631
                            length: 32
                      transformations:
                        - id: CriminalDogs.sol:SafeMath
                          type: replace
                          offset: 1863
                          reason: library
                        - id: '1'
                          type: replace
                          offset: 2747
                          reason: cborAuxdata
                        - id: '1466'
                          type: replace
                          offset: 18703
                          reason: immutable
                        - id: '1466'
                          type: replace
                          offset: 18939
                          reason: immutable
                        - type: replace
                          offset: 1
                          reason: callProtection
                      transformationValues:
                        libraries:
                          contracts/order/OrderUtils.sol:OrderUtilsLib: '0x40b70a4904fad0ff86f8c901b231eac759a0ebb0'
                        immutables:
                          '1466': >-
                            0x000000000000000000000000000000007f56768de3133034fa730a909003a165
                        cborAuxdata:
                          '1': >-
                            0xa26469706673582212201c37bb166aa1bc4777a7471cda1bbba7ef75600cd859180fa30d503673b99f0264736f6c63430008190033
                        callProtection: '0x9deba23b95205127e906108f191a26f5d520896a'
                    deployment:
                      transactionHash: >-
                        0xb6ee9d528b336942dd70d3b41e2811be10a473776352009fd73f85604f5ed206
                      blockNumber: '21721660'
                      transactionIndex: '0'
                      deployer: '0xDFEBAd708F803af22e81044aD228Ff77C83C935c'
                    sources:
                      contracts/Storage.sol:
                        content: |
                          // SPDX-License-Identifier: MIT
                          pragma solidity ^0.8.0;

                          contract Storage {
                              uint256 number;

                              function setNumber(uint256 newNumber) public {
                                  number = newNumber;
                              }

                              function getNumber() public view returns (uint256) {
                                  return number;
                              }
                          }
                      contracts/Owner.sol:
                        content: |
                          // SPDX-License-Identifier: MIT
                          pragma solidity ^0.8.0;

                          contract Owner {
                              address public owner;

                              constructor() {
                                  owner = msg.sender;
                              }
                          }
                    compilation:
                      language: Solidity
                      compiler: solc
                      compilerVersion: v0.8.12+commit.f00d7308
                      compilerSettings: {}
                      name: MyContract
                      fullyQualifiedName: contracts/MyContract.sol:MyContract
                    abi:
                      - {}
                    userdoc: {}
                    devdoc: {}
                    storageLayout: {}
                    transientStorageLayout: {}
                    metadata: {}
                    sourceIds:
                      contracts/UniswapV3Pool.sol:
                        id: 2
                      contracts/NoDelegateCall.sol:
                        id: 0
                    stdJsonInput:
                      language: Solidity
                      sources:
                        contracts/Storage.sol:
                          content: |
                            // SPDX-License-Identifier: MIT
                            pragma solidity ^0.8.0;

                            contract Storage {
                                uint256 number;

                                function setNumber(uint256 newNumber) public {
                                    number = newNumber;
                                }

                                function getNumber() public view returns (uint256) {
                                    return number;
                                }
                            }
                        contracts/Owner.sol:
                          content: |
                            // SPDX-License-Identifier: MIT
                            pragma solidity ^0.8.0;

                            contract Owner {
                                address public owner;

                                constructor() {
                                    owner = msg.sender;
                                }
                            }
                      settings: {}
                    stdJsonOutput:
                      sources: {}
                      contracts: {}
                    signatures:
                      function:
                        - signature: name()
                          signatureHash32: >-
                            0x06fdde0383f15d582d1a74511486c9ddf862a882fb7904b3d9fe9b8b8e58a796
                          signatureHash4: '0x06fdde03'
                        - signature: deprecate(address)
                          signatureHash32: >-
                            0x0753c30c37785fe67c057e37b49f6f8d5a438a94f4d86e2f327454f9c52bf927
                          signatureHash4: '0x0753c30c'
                      event:
                        - signature: AddedBlackList(address)
                          signatureHash32: >-
                            0x42e160154868087d6bfdc0ca23d96a1c1cfa32f1b72ba9ba27b69b98a0d819dc
                          signatureHash4: '0x42e16015'
                      error:
                        - signature: ERC20InsufficientAllowance()
                          signatureHash32: >-
                            0x890e98490493b2eeaa713ba179e7b5e82994498e2a4fd1cb19df5f91a38c1532
                          signatureHash4: '0x890e9849'
                    proxyResolution:
                      isProxy: false
                      proxyType: null
                      implementations: []
                Minimal Response:
                  value:
                    match: exact_match
                    creationMatch: exact_match
                    runtimeMatch: match
                    chainId: '11155111'
                    address: '0xDFEBAd708F803af22e81044aD228Ff77C83C935c'
                    verifiedAt: '2024-07-24T12:00:00Z'
                    matchId: '3266227'
                '`fields=creationBytecode.onchainBytecode,abi,deployment`':
                  value:
                    match: match
                    creationMatch: match
                    runtimeMatch: match
                    chainId: '11155111'
                    address: '0xDFEBAd708F803af22e81044aD228Ff77C83C935c'
                    verifiedAt: '2024-07-24T12:00:00Z'
                    creationBytecode:
                      onchainBytecode: >-
                        0x608060405234801561001057600080fd5b5060043610610036570565b6000819050919050565b600080fd5b61010c816100f4565b811461011757600080fd5b5056fea264697066735821220404e37f487a89a932dca5e77faaf6ca2de3b991f93d230604b1b8daaef64766264736f6c63430008070033
                    deployment:
                      transactionHash: >-
                        0xb6ee9d528b336942dd70d3b41e2811be10a473776352009fd73f85604f5ed206
                      blockNumber: '21721660'
                      transactionIndex: '0'
                      deployer: '0xDFEBAd708F803af22e81044aD228Ff77C83C935c'
                    abi:
                      - {}
                '`omit=creationBytecode,runtimeBytecode,compilation,deployment.transactionHash,deployment.deployer`':
                  value:
                    match: match
                    creationMatch: match
                    runtimeMatch: match
                    chainId: '11155111'
                    address: '0xDFEBAd708F803af22e81044aD228Ff77C83C935c'
                    verifiedAt: '2024-07-24T12:00:00Z'
                    deployment:
                      blockNumber: '21721660'
                      transactionIndex: '0'
                    abi:
                      - {}
                    userdoc: {}
                    devdoc: {}
                    storageLayout: {}
                    transientStorageLayout: {}
                    metadata: {}
                    sourceIds:
                      contracts/UniswapV3Pool.sol:
                        id: 2
                      contracts/NoDelegateCall.sol:
                        id: 0
                Proxy resolution (`fields=proxyResolution`):
                  value:
                    match: exact_match
                    creationMatch: exact_match
                    runtimeMatch: match
                    chainId: '11155111'
                    address: '0xDFEBAd708F803af22e81044aD228Ff77C83C935c'
                    verifiedAt: '2024-07-24T12:00:00Z'
                    proxyResolution:
                      isProxy: true
                      proxyType: EIP1967Proxy
                      implementations:
                        - address: '0x751D7C0Cf91a9b7704541b44E5fF7BeC3D2caA6F'
                          name: Logic contract
                Proxy resolution with non-proxy contract:
                  value:
                    match: exact_match
                    creationMatch: exact_match
                    runtimeMatch: match
                    chainId: '11155111'
                    address: '0xDFEBAd708F803af22e81044aD228Ff77C83C935c'
                    verifiedAt: '2024-07-24T12:00:00Z'
                    proxyResolution:
                      isProxy: false
                      proxyType: null
                      implementations: []
                Proxy resolution error:
                  value:
                    match: exact_match
                    creationMatch: exact_match
                    runtimeMatch: match
                    chainId: '11155111'
                    address: '0xDFEBAd708F803af22e81044aD228Ff77C83C935c'
                    verifiedAt: '2024-07-24T12:00:00Z'
                    proxyResolution:
                      proxyResolutionError:
                        customCode: proxy_resolution_error
                        message: RPC failed
                        errorId: 1ac6b91a-0605-4459-93dc-18f210a70192
        '400':
          description: Bad request from the client
          content:
            application/json:
              schema:
                type: object
                title: GenericErrorResponse
                properties:
                  customCode:
                    type: string
                    description: A string token to indicate the reason of the error
                    example: unsupported_chain
                  message:
                    type: string
                    description: The reasoning of the error
                    example: >-
                      The chain with chainId 3153212 is not supported for
                      verification
                  errorId:
                    type: string
                    format: uuid
                required:
                  - customCode
                  - message
                  - errorId
                examples:
                  - customCode: unsupported_chain
                    message: The chain with chainId 9429413 is not supported
                    errorId: 1ac6b91a-0605-4459-93dc-18f210a70192
              examples:
                Example 1:
                  value:
                    customCode: unsupported_chain
                    message: The chain with chainId 9429413 is not supported
                    errorId: 1ac6b91a-0605-4459-93dc-18f210a70192
        '404':
          description: The contract is not verified on Sourcify
          content:
            application/json:
              schema:
                type: object
                title: VerifiedContractMinimal
                properties:
                  match:
                    type: string
                    enum:
                      - match
                      - exact_match
                      - null
                    title: VerificationStatusNullable
                  creationMatch:
                    type: string
                    enum:
                      - match
                      - exact_match
                      - null
                    title: VerificationStatusNullable
                  runtimeMatch:
                    type: string
                    enum:
                      - match
                      - exact_match
                      - null
                    title: VerificationStatusNullable
                  chainId:
                    type: string
                    title: ChainId
                    pattern: ^\d+$
                    minLength: 1
                    maxLength: 20
                    example: '11155111'
                  address:
                    type: string
                    title: Address
                    description: >-
                      Contract Address in hex string. Can be checksummed or not
                      (i.e. can contain capital letters)
                    pattern: (\b0x[a-fA-F0-9]{40}\b)
                    example: '0xDFEBAd708F803af22e81044aD228Ff77C83C935c'
                  verifiedAt:
                    type: string
                    format: date-time
                    example: '2024-07-24T12:00:00Z'
                  matchId:
                    type: string
                    example: '3266227'
                required:
                  - match
                  - creationMatch
                  - runtimeMatch
                  - chainId
                  - address
              examples:
                Example 1:
                  value:
                    match: null
                    creationMatch: null
                    runtimeMatch: null
                    chainId: '11155111'
                    address: '0xDFEBAd708F803af22e81044aD228Ff77C83C935c'
        '429':
          description: You are sending too many requests to the server
          content:
            application/json:
              schema:
                type: object
                title: GenericErrorResponse
                properties:
                  customCode:
                    type: string
                    description: A string token to indicate the reason of the error
                    example: unsupported_chain
                  message:
                    type: string
                    description: The reasoning of the error
                    example: >-
                      The chain with chainId 3153212 is not supported for
                      verification
                  errorId:
                    type: string
                    format: uuid
                required:
                  - customCode
                  - message
                  - errorId
                examples:
                  - customCode: unsupported_chain
                    message: The chain with chainId 9429413 is not supported
                    errorId: 1ac6b91a-0605-4459-93dc-18f210a70192
              examples:
                Example 1:
                  value:
                    customCode: too_many_requests
                    message: You are sending too many requests
                    errorId: 1ac6b91a-0605-4459-93dc-18f210a70192
        '500':
          description: ''
          content:
            application/json:
              schema:
                type: object
                title: GenericErrorResponse
                properties:
                  customCode:
                    type: string
                    description: A string token to indicate the reason of the error
                    example: unsupported_chain
                  message:
                    type: string
                    description: The reasoning of the error
                    example: >-
                      The chain with chainId 3153212 is not supported for
                      verification
                  errorId:
                    type: string
                    format: uuid
                required:
                  - customCode
                  - message
                  - errorId
                examples:
                  - customCode: unsupported_chain
                    message: The chain with chainId 9429413 is not supported
                    errorId: 1ac6b91a-0605-4459-93dc-18f210a70192
              examples:
                Example 1:
                  value:
                    customCode: internal_error
                    message: Something went wrong
                    errorId: 1ac6b91a-0605-4459-93dc-18f210a70192
      security: []

````