{
  "compiler": {
    "version": "0.8.30+commit.73712a01"
  },
  "language": "Solidity",
  "output": {
    "abi": [
      {
        "inputs": [],
        "stateMutability": "nonpayable",
        "type": "constructor"
      },
      {
        "inputs": [
          {
            "internalType": "address",
            "name": "owner",
            "type": "address"
          }
        ],
        "type": "error",
        "name": "OwnableInvalidOwner"
      },
      {
        "inputs": [
          {
            "internalType": "address",
            "name": "account",
            "type": "address"
          }
        ],
        "type": "error",
        "name": "OwnableUnauthorizedAccount"
      },
      {
        "inputs": [
          {
            "internalType": "string",
            "name": "lotType",
            "type": "string",
            "indexed": false
          },
          {
            "internalType": "string",
            "name": "quantity",
            "type": "string",
            "indexed": false
          },
          {
            "internalType": "string",
            "name": "operatorId",
            "type": "string",
            "indexed": false
          },
          {
            "internalType": "string",
            "name": "originId",
            "type": "string",
            "indexed": false
          },
          {
            "internalType": "string",
            "name": "lotNo",
            "type": "string",
            "indexed": false
          },
          {
            "internalType": "string",
            "name": "transporterId",
            "type": "string",
            "indexed": false
          }
        ],
        "type": "event",
        "name": "CreateLotEvent",
        "anonymous": false
      },
      {
        "inputs": [
          {
            "internalType": "string",
            "name": "lotNos",
            "type": "string",
            "indexed": false
          },
          {
            "internalType": "string",
            "name": "operatorId",
            "type": "string",
            "indexed": false
          },
          {
            "internalType": "string",
            "name": "machineId",
            "type": "string",
            "indexed": false
          },
          {
            "internalType": "string",
            "name": "processingHouseId",
            "type": "string",
            "indexed": false
          },
          {
            "internalType": "string",
            "name": "timestamp",
            "type": "string",
            "indexed": false
          },
          {
            "internalType": "string",
            "name": "firstProcessLotId",
            "type": "string",
            "indexed": false
          }
        ],
        "type": "event",
        "name": "FirstProcessEvent",
        "anonymous": false
      },
      {
        "inputs": [
          {
            "internalType": "address",
            "name": "previousOwner",
            "type": "address",
            "indexed": true
          },
          {
            "internalType": "address",
            "name": "newOwner",
            "type": "address",
            "indexed": true
          }
        ],
        "type": "event",
        "name": "OwnershipTransferred",
        "anonymous": false
      },
      {
        "inputs": [
          {
            "internalType": "string",
            "name": "secondProcessLotId",
            "type": "string",
            "indexed": false
          },
          {
            "internalType": "string",
            "name": "operatorId",
            "type": "string",
            "indexed": false
          },
          {
            "internalType": "string",
            "name": "packageId",
            "type": "string",
            "indexed": false
          },
          {
            "internalType": "string",
            "name": "weight",
            "type": "string",
            "indexed": false
          },
          {
            "internalType": "string",
            "name": "packagingType",
            "type": "string",
            "indexed": false
          },
          {
            "internalType": "string",
            "name": "packingLotId",
            "type": "string",
            "indexed": false
          }
        ],
        "type": "event",
        "name": "PackagingEvent",
        "anonymous": false
      },
      {
        "inputs": [
          {
            "internalType": "string",
            "name": "firstProcessLotIds",
            "type": "string",
            "indexed": false
          },
          {
            "internalType": "string",
            "name": "machineId",
            "type": "string",
            "indexed": false
          },
          {
            "internalType": "string",
            "name": "operatorId",
            "type": "string",
            "indexed": false
          },
          {
            "internalType": "string",
            "name": "secondProcessOutputLotId",
            "type": "string",
            "indexed": false
          },
          {
            "internalType": "string",
            "name": "secondProcessLotId",
            "type": "string",
            "indexed": false
          }
        ],
        "type": "event",
        "name": "SecondProcessEvent",
        "anonymous": false
      },
      {
        "inputs": [
          {
            "internalType": "string",
            "name": "packageId",
            "type": "string",
            "indexed": false
          },
          {
            "internalType": "string",
            "name": "operatorId",
            "type": "string",
            "indexed": false
          },
          {
            "internalType": "string",
            "name": "transporterId",
            "type": "string",
            "indexed": false
          },
          {
            "internalType": "string",
            "name": "cartonId",
            "type": "string",
            "indexed": false
          },
          {
            "internalType": "string",
            "name": "transportLotId",
            "type": "string",
            "indexed": false
          }
        ],
        "type": "event",
        "name": "TransportEvent",
        "anonymous": false
      },
      {
        "inputs": [],
        "stateMutability": "view",
        "type": "function",
        "name": "_firstProcessLotId",
        "outputs": [
          {
            "internalType": "uint256",
            "name": "",
            "type": "uint256"
          }
        ]
      },
      {
        "inputs": [],
        "stateMutability": "view",
        "type": "function",
        "name": "_packingLotId",
        "outputs": [
          {
            "internalType": "uint256",
            "name": "",
            "type": "uint256"
          }
        ]
      },
      {
        "inputs": [],
        "stateMutability": "view",
        "type": "function",
        "name": "_secondProcessLotId",
        "outputs": [
          {
            "internalType": "uint256",
            "name": "",
            "type": "uint256"
          }
        ]
      },
      {
        "inputs": [],
        "stateMutability": "view",
        "type": "function",
        "name": "_transportLotId",
        "outputs": [
          {
            "internalType": "uint256",
            "name": "",
            "type": "uint256"
          }
        ]
      },
      {
        "inputs": [
          {
            "internalType": "string",
            "name": "lotType",
            "type": "string"
          },
          {
            "internalType": "string",
            "name": "quantity",
            "type": "string"
          },
          {
            "internalType": "string",
            "name": "operatorId",
            "type": "string"
          },
          {
            "internalType": "string",
            "name": "originId",
            "type": "string"
          },
          {
            "internalType": "string",
            "name": "lotNo",
            "type": "string"
          },
          {
            "internalType": "string",
            "name": "transporterId",
            "type": "string"
          }
        ],
        "stateMutability": "nonpayable",
        "type": "function",
        "name": "createLot"
      },
      {
        "inputs": [],
        "stateMutability": "view",
        "type": "function",
        "name": "owner",
        "outputs": [
          {
            "internalType": "address",
            "name": "",
            "type": "address"
          }
        ]
      },
      {
        "inputs": [
          {
            "internalType": "string",
            "name": "secondProcessLotId",
            "type": "string"
          },
          {
            "internalType": "string",
            "name": "operatorId",
            "type": "string"
          },
          {
            "internalType": "string",
            "name": "packageId",
            "type": "string"
          },
          {
            "internalType": "string",
            "name": "weight",
            "type": "string"
          },
          {
            "internalType": "string",
            "name": "packagingType",
            "type": "string"
          }
        ],
        "stateMutability": "nonpayable",
        "type": "function",
        "name": "packing"
      },
      {
        "inputs": [
          {
            "internalType": "string",
            "name": "lotNos",
            "type": "string"
          },
          {
            "internalType": "string",
            "name": "operatorId",
            "type": "string"
          },
          {
            "internalType": "string",
            "name": "machineId",
            "type": "string"
          },
          {
            "internalType": "string",
            "name": "processingHouseId",
            "type": "string"
          },
          {
            "internalType": "string",
            "name": "timestamp",
            "type": "string"
          }
        ],
        "stateMutability": "nonpayable",
        "type": "function",
        "name": "registerFirstProcess"
      },
      {
        "inputs": [
          {
            "internalType": "string",
            "name": "firstProcessLotIds",
            "type": "string"
          },
          {
            "internalType": "string",
            "name": "machineId",
            "type": "string"
          },
          {
            "internalType": "string",
            "name": "operatorId",
            "type": "string"
          },
          {
            "internalType": "string",
            "name": "secondProcessOutputLotId",
            "type": "string"
          }
        ],
        "stateMutability": "nonpayable",
        "type": "function",
        "name": "registerSecondProcess"
      },
      {
        "inputs": [],
        "stateMutability": "nonpayable",
        "type": "function",
        "name": "renounceOwnership"
      },
      {
        "inputs": [
          {
            "internalType": "address",
            "name": "newOwner",
            "type": "address"
          }
        ],
        "stateMutability": "nonpayable",
        "type": "function",
        "name": "transferOwnership"
      },
      {
        "inputs": [
          {
            "internalType": "string",
            "name": "packageId",
            "type": "string"
          },
          {
            "internalType": "string",
            "name": "operatorId",
            "type": "string"
          },
          {
            "internalType": "string",
            "name": "transporterId",
            "type": "string"
          },
          {
            "internalType": "string",
            "name": "cartonId",
            "type": "string"
          }
        ],
        "stateMutability": "nonpayable",
        "type": "function",
        "name": "transport"
      }
    ],
    "devdoc": {
      "kind": "dev",
      "methods": {
        "owner()": {
          "details": "Returns the address of the current owner."
        },
        "renounceOwnership()": {
          "details": "Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner."
        },
        "transferOwnership(address)": {
          "details": "Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."
        }
      },
      "version": 1
    },
    "userdoc": {
      "kind": "user",
      "methods": {},
      "version": 1
    }
  },
  "settings": {
    "remappings": [
      "@openzeppelin/=node_modules/@openzeppelin/",
      "forge-std/=lib/forge-std/src/",
      "hardhat/=node_modules/hardhat/"
    ],
    "optimizer": {
      "enabled": true,
      "runs": 200
    },
    "metadata": {
      "bytecodeHash": "ipfs"
    },
    "compilationTarget": {
      "contracts/ExampleSupplyChain.sol": "ExampleSupplyChain"
    },
    "evmVersion": "cancun",
    "libraries": {},
    "viaIR": true
  },
  "sources": {
    "contracts/ExampleSupplyChain.sol": {
      "keccak256": "0xda9e19e3cf9c8d9ab8b72f8a1222f80afa4ee20846d8193f4d40f26d685a4960",
      "urls": [
        "bzz-raw://6129c9e6208599e2c63fbfe635efecf4269401a9d8a1189bf1e0307a3fa52fa1",
        "dweb:/ipfs/QmbJpC2FrW86Pt9brNWJwEM8Ltj5pSRcCkRBGxZnWXvt7e"
      ],
      "license": "FSL-1.1-MIT"
    },
    "node_modules/@openzeppelin/contracts/access/Ownable.sol": {
      "keccak256": "0xff6d0bb2e285473e5311d9d3caacb525ae3538a80758c10649a4d61029b017bb",
      "urls": [
        "bzz-raw://8ed324d3920bb545059d66ab97d43e43ee85fd3bd52e03e401f020afb0b120f6",
        "dweb:/ipfs/QmfEckWLmZkDDcoWrkEvMWhms66xwTLff9DDhegYpvHo1a"
      ],
      "license": "MIT"
    },
    "node_modules/@openzeppelin/contracts/utils/Context.sol": {
      "keccak256": "0x493033a8d1b176a037b2cc6a04dad01a5c157722049bbecf632ca876224dd4b2",
      "urls": [
        "bzz-raw://6a708e8a5bdb1011c2c381c9a5cfd8a9a956d7d0a9dc1bd8bcdaf52f76ef2f12",
        "dweb:/ipfs/Qmax9WHBnVsZP46ZxEMNRQpLQnrdE4dK8LehML1Py8FowF"
      ],
      "license": "MIT"
    },
    "node_modules/@openzeppelin/contracts/utils/Panic.sol": {
      "keccak256": "0xf7fe324703a64fc51702311dc51562d5cb1497734f074e4f483bfb6717572d7a",
      "urls": [
        "bzz-raw://c6a5ff4f9fd8649b7ee20800b7fa387d3465bd77cf20c2d1068cd5c98e1ed57a",
        "dweb:/ipfs/QmVSaVJf9FXFhdYEYeCEfjMVHrxDh5qL4CGkxdMWpQCrqG"
      ],
      "license": "MIT"
    },
    "node_modules/@openzeppelin/contracts/utils/Strings.sol": {
      "keccak256": "0xad148d59f05165f9217d0a9e1ac8f772abb02ea6aaad8a756315c532bf79f9f4",
      "urls": [
        "bzz-raw://15e3599867c2182f5831e9268b274b2ef2047825837df6b4d81c9e89254b093e",
        "dweb:/ipfs/QmZbL7XAYr5RmaNaooPgZRmcDXaudfsYQfYD9y5iAECvpS"
      ],
      "license": "MIT"
    },
    "node_modules/@openzeppelin/contracts/utils/math/Math.sol": {
      "keccak256": "0x1225214420c83ebcca88f2ae2b50f053aaa7df7bd684c3e878d334627f2edfc6",
      "urls": [
        "bzz-raw://6c5fab4970634f9ab9a620983dc1c8a30153981a0b1a521666e269d0a11399d3",
        "dweb:/ipfs/QmVRnBC575MESGkEHndjujtR7qub2FzU9RWy9eKLp4hPZB"
      ],
      "license": "MIT"
    },
    "node_modules/@openzeppelin/contracts/utils/math/SafeCast.sol": {
      "keccak256": "0x195533c86d0ef72bcc06456a4f66a9b941f38eb403739b00f21fd7c1abd1ae54",
      "urls": [
        "bzz-raw://b1d578337048cad08c1c03041cca5978eff5428aa130c781b271ad9e5566e1f8",
        "dweb:/ipfs/QmPFKL2r9CBsMwmUqqdcFPfHZB2qcs9g1HDrPxzWSxomvy"
      ],
      "license": "MIT"
    },
    "node_modules/@openzeppelin/contracts/utils/math/SignedMath.sol": {
      "keccak256": "0xb1970fac7b64e6c09611e6691791e848d5e3fe410fa5899e7df2e0afd77a99e3",
      "urls": [
        "bzz-raw://db5fbb3dddd8b7047465b62575d96231ba8a2774d37fb4737fbf23340fabbb03",
        "dweb:/ipfs/QmVUSvooZKEdEdap619tcJjTLcAuH6QBdZqAzWwnAXZAWJ"
      ],
      "license": "MIT"
    }
  },
  "version": 1
}