{
  "address": "0xf0d25784782ce6229fCbe5eE4366A7Bb4103C70F",
  "abi": [
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "uint256",
          "name": "eventId",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "string",
          "name": "name",
          "type": "string"
        },
        {
          "indexed": false,
          "internalType": "address",
          "name": "owner",
          "type": "address"
        }
      ],
      "name": "EventCreated",
      "type": "event"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "_name",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "_description",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "_imageHash",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "_location",
          "type": "string"
        },
        {
          "internalType": "uint256",
          "name": "_startTime",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "_endTime",
          "type": "uint256"
        }
      ],
      "name": "createEvent",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "name": "events",
      "outputs": [
        {
          "internalType": "string",
          "name": "name",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "description",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "imageHash",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "location",
          "type": "string"
        },
        {
          "internalType": "address",
          "name": "owner",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "startTime",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "endTime",
          "type": "uint256"
        },
        {
          "internalType": "bool",
          "name": "active",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "getAllEvents",
      "outputs": [
        {
          "components": [
            {
              "internalType": "string",
              "name": "name",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "description",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "imageHash",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "location",
              "type": "string"
            },
            {
              "internalType": "address",
              "name": "owner",
              "type": "address"
            },
            {
              "internalType": "uint256",
              "name": "startTime",
              "type": "uint256"
            },
            {
              "internalType": "uint256",
              "name": "endTime",
              "type": "uint256"
            },
            {
              "internalType": "bool",
              "name": "active",
              "type": "bool"
            }
          ],
          "internalType": "struct EventManager.Event[]",
          "name": "",
          "type": "tuple[]"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "_eventId",
          "type": "uint256"
        }
      ],
      "name": "getEvent",
      "outputs": [
        {
          "components": [
            {
              "internalType": "string",
              "name": "name",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "description",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "imageHash",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "location",
              "type": "string"
            },
            {
              "internalType": "address",
              "name": "owner",
              "type": "address"
            },
            {
              "internalType": "uint256",
              "name": "startTime",
              "type": "uint256"
            },
            {
              "internalType": "uint256",
              "name": "endTime",
              "type": "uint256"
            },
            {
              "internalType": "bool",
              "name": "active",
              "type": "bool"
            }
          ],
          "internalType": "struct EventManager.Event",
          "name": "",
          "type": "tuple"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "_eventId",
          "type": "uint256"
        },
        {
          "internalType": "string",
          "name": "_name",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "_description",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "_imageHash",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "_location",
          "type": "string"
        },
        {
          "internalType": "uint256",
          "name": "_startTime",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "_endTime",
          "type": "uint256"
        },
        {
          "internalType": "bool",
          "name": "_active",
          "type": "bool"
        }
      ],
      "name": "updateEvent",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    }
  ],
  "transactionHash": "0x027d40f3d16506e22625a7d10ddaab01ae0cf0980f7af3fca5c813d8990c2626",
  "receipt": {
    "to": null,
    "from": "0x72ac37F2B8685300a6B3781669a487eBb94a5CCd",
    "contractAddress": "0xf0d25784782ce6229fCbe5eE4366A7Bb4103C70F",
    "transactionIndex": 0,
    "gasUsed": "1035825",
    "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
    "blockHash": "0xc4446c99e6f96f14e8687cd765abc94ef774f6320032f05eb14bf7945987a8f7",
    "transactionHash": "0x027d40f3d16506e22625a7d10ddaab01ae0cf0980f7af3fca5c813d8990c2626",
    "logs": [],
    "blockNumber": 27913143,
    "cumulativeGasUsed": "1035825",
    "status": 1,
    "byzantium": true
  },
  "args": [],
  "numDeployments": 1,
  "solcInputHash": "ad61601d16bee984c0a38353d68fb497",
  "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"eventId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"EventCreated\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"_name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"_description\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"_imageHash\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"_location\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"_startTime\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_endTime\",\"type\":\"uint256\"}],\"name\":\"createEvent\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"events\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"description\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"imageHash\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"location\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"startTime\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"endTime\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"active\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getAllEvents\",\"outputs\":[{\"components\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"description\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"imageHash\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"location\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"startTime\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"endTime\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"active\",\"type\":\"bool\"}],\"internalType\":\"struct EventManager.Event[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_eventId\",\"type\":\"uint256\"}],\"name\":\"getEvent\",\"outputs\":[{\"components\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"description\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"imageHash\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"location\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"startTime\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"endTime\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"active\",\"type\":\"bool\"}],\"internalType\":\"struct EventManager.Event\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_eventId\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"_name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"_description\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"_imageHash\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"_location\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"_startTime\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_endTime\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"_active\",\"type\":\"bool\"}],\"name\":\"updateEvent\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/EventManager.sol\":\"EventManager\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[],\"viaIR\":true},\"sources\":{\"contracts/EventManager.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\npragma solidity >=0.8.0 <0.9.0;\\n\\n/*\\n * @title EventManager\\n * @dev Manages event creation and details.\\n */\\ncontract EventManager {\\n\\tstruct Event {\\n\\t\\tstring name;\\n\\t\\tstring description;\\n\\t\\tstring imageHash; // IPFS hash of the event's image\\n\\t\\tstring location; // Latitude and longitude: \\\"lat, long\\\"\\n\\t\\taddress owner;\\n\\t\\tuint256 startTime; // Unix timestamp\\n\\t\\tuint256 endTime; // Unix timestamp\\n\\t\\tbool active;\\n\\t}\\n\\n\\tstruct EventData {\\n\\t\\tstring name;\\n\\t\\tstring description;\\n\\t\\tstring imageHash;\\n\\t\\tstring location;\\n\\t\\tuint256 startTime;\\n\\t\\tuint256 endTime;\\n\\t\\tbool active;\\n\\t}\\n\\n\\tEvent[] public events;\\n\\n\\tevent EventCreated(uint256 indexed eventId, string name, address owner);\\n\\n\\t// Modifier to ensure only the owner can perform an action\\n\\tmodifier onlyOwner(uint256 _eventId) {\\n\\t\\trequire(\\n\\t\\t\\tmsg.sender == events[_eventId].owner,\\n\\t\\t\\t\\\"Only the owner can perform this action\\\"\\n\\t\\t);\\n\\t\\t_;\\n\\t}\\n\\n\\t// Modifier to ensure event exists\\n\\tmodifier eventExists(uint256 _eventId) {\\n\\t\\trequire(_eventId < events.length, \\\"Event does not exist\\\");\\n\\t\\t_;\\n\\t}\\n\\n\\t// Modifier for validating event data\\n\\tmodifier validEventData(EventData memory data) {\\n\\t\\trequire(\\n\\t\\t\\tbytes(data.name).length > 0 && bytes(data.name).length <= 128,\\n\\t\\t\\t\\\"Invalid name\\\"\\n\\t\\t);\\n\\t\\trequire(\\n\\t\\t\\tbytes(data.description).length > 0 &&\\n\\t\\t\\t\\tbytes(data.description).length <= 1024,\\n\\t\\t\\t\\\"Invalid description\\\"\\n\\t\\t);\\n\\t\\trequire(bytes(data.imageHash).length == 46, \\\"Invalid IPFS hash\\\");\\n\\t\\trequire(bytes(data.location).length > 0, \\\"Invalid location\\\");\\n\\t\\trequire(data.startTime < data.endTime, \\\"Invalid time range\\\");\\n\\t\\t_;\\n\\t}\\n\\n\\tfunction _setEvent(\\n\\t\\tuint256 _eventId,\\n\\t\\tEventData memory data,\\n\\t\\tbool _isNewEvent\\n\\t) private validEventData(data) {\\n\\t\\tEvent memory newEvent = Event({\\n\\t\\t\\tname: data.name,\\n\\t\\t\\tdescription: data.description,\\n\\t\\t\\timageHash: data.imageHash,\\n\\t\\t\\tlocation: data.location,\\n\\t\\t\\towner: msg.sender,\\n\\t\\t\\tstartTime: data.startTime,\\n\\t\\t\\tendTime: data.endTime,\\n\\t\\t\\tactive: data.active\\n\\t\\t});\\n\\n\\t\\tif (_isNewEvent) {\\n\\t\\t\\tevents.push(newEvent);\\n\\t\\t\\temit EventCreated(events.length - 1, data.name, msg.sender);\\n\\t\\t} else {\\n\\t\\t\\tevents[_eventId] = newEvent;\\n\\t\\t}\\n\\t}\\n\\n\\tfunction createEvent(\\n\\t\\tstring calldata _name,\\n\\t\\tstring calldata _description,\\n\\t\\tstring calldata _imageHash,\\n\\t\\tstring calldata _location,\\n\\t\\tuint256 _startTime,\\n\\t\\tuint256 _endTime\\n\\t) external {\\n\\t\\tEventData memory data = EventData({\\n\\t\\t\\tname: _name,\\n\\t\\t\\tdescription: _description,\\n\\t\\t\\timageHash: _imageHash,\\n\\t\\t\\tlocation: _location,\\n\\t\\t\\tstartTime: _startTime,\\n\\t\\t\\tendTime: _endTime,\\n\\t\\t\\tactive: true\\n\\t\\t});\\n\\n\\t\\t_setEvent(0, data, true);\\n\\t}\\n\\n\\tfunction updateEvent(\\n\\t\\tuint256 _eventId,\\n\\t\\tstring calldata _name,\\n\\t\\tstring calldata _description,\\n\\t\\tstring calldata _imageHash,\\n\\t\\tstring calldata _location,\\n\\t\\tuint256 _startTime,\\n\\t\\tuint256 _endTime,\\n\\t\\tbool _active\\n\\t) external eventExists(_eventId) onlyOwner(_eventId) {\\n\\t\\tEventData memory data = EventData({\\n\\t\\t\\tname: _name,\\n\\t\\t\\tdescription: _description,\\n\\t\\t\\timageHash: _imageHash,\\n\\t\\t\\tlocation: _location,\\n\\t\\t\\tstartTime: _startTime,\\n\\t\\t\\tendTime: _endTime,\\n\\t\\t\\tactive: _active\\n\\t\\t});\\n\\n\\t\\t_setEvent(_eventId, data, false);\\n\\t}\\n\\n\\tfunction getEvent(uint256 _eventId) external view returns (Event memory) {\\n\\t\\treturn events[_eventId];\\n\\t}\\n\\n\\tfunction getAllEvents() external view returns (Event[] memory) {\\n\\t\\treturn events;\\n\\t}\\n}\\n\",\"keccak256\":\"0x5cd0ae08c566acc226292b06999452d99c4257f1830b2963bbcc77da889764b6\",\"license\":\"MIT\"}},\"version\":1}",
  "bytecode": "0x60808060405234610016576111c4908161001c8239f35b600080fdfe60406080815260048036101561001457600080fd5b600091823560e01c80630b7914301461088a57806315cd972d146105545780636d1884e0146104db578063c27a500d146103d55763e2064c691461005757600080fd5b346103d1576101003660031901126103d15781359083602480359467ffffffffffffffff958681116103cd576100909036908301610b48565b91909460449283358981116103c9576100ac9036908501610b48565b91909760649081358c81116103c5576100c89036908801610b48565b9a909c6084359081116103c1576100e29036908901610b48565b95909260e4359b8c1515809d036103be578e90541115610387576101058e61096a565b508901546001600160a01b0316330361033657875195610124876109f1565b369061012f92610c03565b8552369061013c92610c03565b9b60209a8b85019d8e52369061015192610c03565b93858401948552369061016392610c03565b9460608301958652608083019660a435885260a084019860c4358a5260c085019a8b52845151801515908161032a575b50156102fd578d515180151590816102f0575b50156102bc57602e8651510361028a57875151156102595788518a51111561022657508d6102238e61021d8f8f8f8f8f8f8f8f8f5199519051925193519451955115159682519a6101f68c610a23565b8b528a0152880152606087015233608087015260a086015260c085015260e084015261096a565b90610c4a565b80f35b865162461bcd60e51b81529283018c905260129083015271496e76616c69642074696d652072616e676560701b90820152fd5b865162461bcd60e51b81529283018c90526010908301526f24b73b30b634b2103637b1b0ba34b7b760811b90820152fd5b865162461bcd60e51b81529283018c905260119083015270092dcecc2d8d2c84092a08ca640d0c2e6d607b1b90820152fd5b865162461bcd60e51b81529283018c90526013908301527224b73b30b634b2103232b9b1b934b83a34b7b760691b90820152fd5b61040091501115386101a6565b865162461bcd60e51b81529283018c9052600c908301526b496e76616c6964206e616d6560a01b90820152fd5b60809150111538610193565b5050855162461bcd60e51b81526020818901526026818b01527f4f6e6c7920746865206f776e65722063616e20706572666f726d207468697320818a01526530b1ba34b7b760d11b81850152608490fd5b875162461bcd60e51b81526020818b01526014818d015273115d995b9d08191bd95cc81b9bdd08195e1a5cdd60621b818c01528590fd5b80fd5b8a80fd5b8980fd5b8680fd5b8380fd5b8280fd5b509190346104d757816003193601126104d75781549067ffffffffffffffff82116104c45750825191602092610410848460051b0182610a40565b82815281805283810192827f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563855b83831061049f57505050508451938085019181865251809252858501958260051b8601019392955b8287106104735785850386f35b90919293828061048f600193603f198a82030186528851610b7b565b9601920196019592919092610466565b6008886001926104b2859b98999b61110a565b8152019201920191909694939661043e565b634e487b7160e01b835260419052602482fd5b5080fd5b5090346103d15760203660031901126103d15761053761053d916105509460e0855161050681610a23565b60608152606060208201526060878201526060808201528260808201528260a08201528260c082015201523561096a565b5061110a565b9051918291602083526020830190610b7b565b0390f35b509190346104d75760c03660031901126104d75767ffffffffffffffff81358181116103cd576105879036908401610b48565b949060249586358481116103c9576105a29036908701610b48565b9460449182358281116103c5576105bc9036908a01610b48565b97909560649384359081116108865761060b6105fb989796959461062a946106028c958f6105f09061061c97369101610b48565b9b9097519d8e6109f1565b3691610c03565b8b523691610c03565b9660209a8b8a019889523691610c03565b948888019586523691610c03565b606086019081526080860190608435825260a087019260a435845260c088019460018652885151801515908161087a575b501561084c57875151801515908161083f575b501561080a57602e875151036107d757825151156107a55783518551111561077157505086519551945190519151925193511515948851966106af88610a23565b87528987015287860152606085015233608085015260a084015260c083015260e082015285546801000000000000000081101561075f579061021d8260016106f99401895561096a565b845460001981019490851161074d57505181518281527f40fb05b814a900c99fa0a76d919dfdeaf3389540e4ca70f97ba40ca9a38f3797939092839261074191840190610b08565b9033908301520390a280f35b634e487b7160e01b8652601190528585fd5b634e487b7160e01b8752604186528787fd5b71496e76616c69642074696d652072616e676560701b8c918f6012908e8e519562461bcd60e51b8752860152840152820152fd5b6f24b73b30b634b2103637b1b0ba34b7b760811b8c918f6010908e8e519562461bcd60e51b8752860152840152820152fd5b70092dcecc2d8d2c84092a08ca640d0c2e6d607b1b8c918f6011908e8e519562461bcd60e51b8752860152840152820152fd5b7224b73b30b634b2103232b9b1b934b83a34b7b760691b8c918f6013908e8e519562461bcd60e51b8752860152840152820152fd5b610400915011153861066e565b6b496e76616c6964206e616d6560a01b8c918f600c908e8e519562461bcd60e51b8752860152840152820152fd5b6080915011153861065b565b8b80fd5b50346103d15760203660031901126103d15781359280548410156103be57506108b56109269361096a565b50916108c083610a62565b926108cd60018201610a62565b9161094f6108dd60028401610a62565b916109416108ed60038601610a62565b9160018060a01b0390860154169660058601549461093460ff600760068a0154990154169883519c8d9c8d610100908181520190610b08565b8c810360208e015290610b08565b918a8303908b0152610b08565b908782036060890152610b08565b93608086015260a085015260c0840152151560e08301520390f35b9060009182548110156109a35782805260031b7f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563019190565b634e487b7160e01b83526032600452602483fd5b90600182811c921680156109e7575b60208310146109d157565b634e487b7160e01b600052602260045260246000fd5b91607f16916109c6565b60e0810190811067ffffffffffffffff821117610a0d57604052565b634e487b7160e01b600052604160045260246000fd5b610100810190811067ffffffffffffffff821117610a0d57604052565b90601f8019910116810190811067ffffffffffffffff821117610a0d57604052565b9060405191826000825492610a76846109b7565b908184526001948581169081600014610ae55750600114610aa2575b5050610aa092500383610a40565b565b9093915060005260209081600020936000915b818310610acd575050610aa093508201013880610a92565b85548884018501529485019487945091830191610ab5565b915050610aa094506020925060ff191682840152151560051b8201013880610a92565b919082519283825260005b848110610b34575050826000602080949584010152601f8019910116010190565b602081830181015184830182015201610b13565b9181601f84011215610b765782359167ffffffffffffffff8311610b765760208381860195010111610b7657565b600080fd5b9060e080610bd1610bbf610bad610b9b8751610100808952880190610b08565b60208801518782036020890152610b08565b60408701518682036040880152610b08565b60608601518582036060870152610b08565b6080808601516001600160a01b03169085015260a0808601519085015260c08086015190850152930151151591015290565b92919267ffffffffffffffff8211610a0d5760405191610c2d601f8201601f191660200184610a40565b829481845281830111610b76578281602093846000960137010152565b906110f4578151805167ffffffffffffffff90818111610a0d5780610c6f85546109b7565b93601f948581116110a2575b5060209085831160011461103d57600092611032575b50508160011b916000199060031b1c19161783555b60018084016020860151805190848211610a0d578190610cc684546109b7565b878111610fdf575b50602090878311600114610f7c57600092610f71575b5050600019600383901b1c191690831b1790555b600284016040860151805190848211610a0d578190610d1784546109b7565b878111610f1e575b50602090878311600114610ebb57600092610eb0575b5050600019600383901b1c191690831b1790555b600384019260608601518051938411610a0d57610d6685546109b7565b828111610e68575b506020918411600114610dfb57928060079593819360e09896600094610df0575b50501b916000199060031b1c19161790555b6004810160018060a01b036080860151166bffffffffffffffffffffffff60a01b82541617905560a0840151600582015560c0840151600682015501910151151560ff80198354169116179055565b015192503880610d8f565b90601f9392931983169185600052816000209260005b818110610e5257509160e09795939185600798969410610e39575b505050811b019055610da1565b015160001960f88460031b161c19169055388080610e2c565b8284015185559386019360209384019301610e11565b8560005260206000208380870160051c82019260208810610ea7575b0160051c019084905b828110610e9b575050610d6e565b60008155018490610e8d565b92508192610e84565b015190503880610d35565b90859350601f1983169185600052816000209260005b818110610f0657508411610eed575b505050811b019055610d49565b015160001960f88460031b161c19169055388080610ee0565b82840151855588969094019360209384019301610ed1565b9091508360005260206000208780850160051c82019260208610610f68575b918791869594930160051c01915b828110610f59575050610d1f565b60008155859450879101610f4b565b92508192610f3d565b015190503880610ce4565b90859350601f1983169185600052816000209260005b818110610fc757508411610fae575b505050811b019055610cf8565b015160001960f88460031b161c19169055388080610fa1565b82840151855588969094019360209384019301610f92565b9091508360005260206000208780850160051c82019260208610611029575b918791869594930160051c01915b82811061101a575050610cce565b6000815585945087910161100c565b92508192610ffe565b015190503880610c91565b60008781528281209350601f198516905b81811061108a5750908460019594939210611071575b505050811b018355610ca6565b015160001960f88460031b161c19169055388080611064565b9293602060018192878601518155019501930161104e565b9091506000868152602081208680860160051c820193602087106110eb575b908695949392910160051c01915b8281106110dd575050610c7b565b8181558594506001016110cf565b935081936110c1565b634e487b7160e01b600052600060045260246000fd5b9060405161111781610a23565b60e060ff6007839561112881610a62565b855261113660018201610a62565b602086015261114760028201610a62565b604086015261115860038201610a62565b606086015260048101546001600160a01b03166080860152600581015460a0860152600681015460c0860152015416151591015256fea2646970667358221220e7a5fdf06ab2df96f95a8926748244cf46a51d4c6688d478a7e7c867c147e11d64736f6c63430008110033",
  "deployedBytecode": "0x60406080815260048036101561001457600080fd5b600091823560e01c80630b7914301461088a57806315cd972d146105545780636d1884e0146104db578063c27a500d146103d55763e2064c691461005757600080fd5b346103d1576101003660031901126103d15781359083602480359467ffffffffffffffff958681116103cd576100909036908301610b48565b91909460449283358981116103c9576100ac9036908501610b48565b91909760649081358c81116103c5576100c89036908801610b48565b9a909c6084359081116103c1576100e29036908901610b48565b95909260e4359b8c1515809d036103be578e90541115610387576101058e61096a565b508901546001600160a01b0316330361033657875195610124876109f1565b369061012f92610c03565b8552369061013c92610c03565b9b60209a8b85019d8e52369061015192610c03565b93858401948552369061016392610c03565b9460608301958652608083019660a435885260a084019860c4358a5260c085019a8b52845151801515908161032a575b50156102fd578d515180151590816102f0575b50156102bc57602e8651510361028a57875151156102595788518a51111561022657508d6102238e61021d8f8f8f8f8f8f8f8f8f5199519051925193519451955115159682519a6101f68c610a23565b8b528a0152880152606087015233608087015260a086015260c085015260e084015261096a565b90610c4a565b80f35b865162461bcd60e51b81529283018c905260129083015271496e76616c69642074696d652072616e676560701b90820152fd5b865162461bcd60e51b81529283018c90526010908301526f24b73b30b634b2103637b1b0ba34b7b760811b90820152fd5b865162461bcd60e51b81529283018c905260119083015270092dcecc2d8d2c84092a08ca640d0c2e6d607b1b90820152fd5b865162461bcd60e51b81529283018c90526013908301527224b73b30b634b2103232b9b1b934b83a34b7b760691b90820152fd5b61040091501115386101a6565b865162461bcd60e51b81529283018c9052600c908301526b496e76616c6964206e616d6560a01b90820152fd5b60809150111538610193565b5050855162461bcd60e51b81526020818901526026818b01527f4f6e6c7920746865206f776e65722063616e20706572666f726d207468697320818a01526530b1ba34b7b760d11b81850152608490fd5b875162461bcd60e51b81526020818b01526014818d015273115d995b9d08191bd95cc81b9bdd08195e1a5cdd60621b818c01528590fd5b80fd5b8a80fd5b8980fd5b8680fd5b8380fd5b8280fd5b509190346104d757816003193601126104d75781549067ffffffffffffffff82116104c45750825191602092610410848460051b0182610a40565b82815281805283810192827f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563855b83831061049f57505050508451938085019181865251809252858501958260051b8601019392955b8287106104735785850386f35b90919293828061048f600193603f198a82030186528851610b7b565b9601920196019592919092610466565b6008886001926104b2859b98999b61110a565b8152019201920191909694939661043e565b634e487b7160e01b835260419052602482fd5b5080fd5b5090346103d15760203660031901126103d15761053761053d916105509460e0855161050681610a23565b60608152606060208201526060878201526060808201528260808201528260a08201528260c082015201523561096a565b5061110a565b9051918291602083526020830190610b7b565b0390f35b509190346104d75760c03660031901126104d75767ffffffffffffffff81358181116103cd576105879036908401610b48565b949060249586358481116103c9576105a29036908701610b48565b9460449182358281116103c5576105bc9036908a01610b48565b97909560649384359081116108865761060b6105fb989796959461062a946106028c958f6105f09061061c97369101610b48565b9b9097519d8e6109f1565b3691610c03565b8b523691610c03565b9660209a8b8a019889523691610c03565b948888019586523691610c03565b606086019081526080860190608435825260a087019260a435845260c088019460018652885151801515908161087a575b501561084c57875151801515908161083f575b501561080a57602e875151036107d757825151156107a55783518551111561077157505086519551945190519151925193511515948851966106af88610a23565b87528987015287860152606085015233608085015260a084015260c083015260e082015285546801000000000000000081101561075f579061021d8260016106f99401895561096a565b845460001981019490851161074d57505181518281527f40fb05b814a900c99fa0a76d919dfdeaf3389540e4ca70f97ba40ca9a38f3797939092839261074191840190610b08565b9033908301520390a280f35b634e487b7160e01b8652601190528585fd5b634e487b7160e01b8752604186528787fd5b71496e76616c69642074696d652072616e676560701b8c918f6012908e8e519562461bcd60e51b8752860152840152820152fd5b6f24b73b30b634b2103637b1b0ba34b7b760811b8c918f6010908e8e519562461bcd60e51b8752860152840152820152fd5b70092dcecc2d8d2c84092a08ca640d0c2e6d607b1b8c918f6011908e8e519562461bcd60e51b8752860152840152820152fd5b7224b73b30b634b2103232b9b1b934b83a34b7b760691b8c918f6013908e8e519562461bcd60e51b8752860152840152820152fd5b610400915011153861066e565b6b496e76616c6964206e616d6560a01b8c918f600c908e8e519562461bcd60e51b8752860152840152820152fd5b6080915011153861065b565b8b80fd5b50346103d15760203660031901126103d15781359280548410156103be57506108b56109269361096a565b50916108c083610a62565b926108cd60018201610a62565b9161094f6108dd60028401610a62565b916109416108ed60038601610a62565b9160018060a01b0390860154169660058601549461093460ff600760068a0154990154169883519c8d9c8d610100908181520190610b08565b8c810360208e015290610b08565b918a8303908b0152610b08565b908782036060890152610b08565b93608086015260a085015260c0840152151560e08301520390f35b9060009182548110156109a35782805260031b7f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563019190565b634e487b7160e01b83526032600452602483fd5b90600182811c921680156109e7575b60208310146109d157565b634e487b7160e01b600052602260045260246000fd5b91607f16916109c6565b60e0810190811067ffffffffffffffff821117610a0d57604052565b634e487b7160e01b600052604160045260246000fd5b610100810190811067ffffffffffffffff821117610a0d57604052565b90601f8019910116810190811067ffffffffffffffff821117610a0d57604052565b9060405191826000825492610a76846109b7565b908184526001948581169081600014610ae55750600114610aa2575b5050610aa092500383610a40565b565b9093915060005260209081600020936000915b818310610acd575050610aa093508201013880610a92565b85548884018501529485019487945091830191610ab5565b915050610aa094506020925060ff191682840152151560051b8201013880610a92565b919082519283825260005b848110610b34575050826000602080949584010152601f8019910116010190565b602081830181015184830182015201610b13565b9181601f84011215610b765782359167ffffffffffffffff8311610b765760208381860195010111610b7657565b600080fd5b9060e080610bd1610bbf610bad610b9b8751610100808952880190610b08565b60208801518782036020890152610b08565b60408701518682036040880152610b08565b60608601518582036060870152610b08565b6080808601516001600160a01b03169085015260a0808601519085015260c08086015190850152930151151591015290565b92919267ffffffffffffffff8211610a0d5760405191610c2d601f8201601f191660200184610a40565b829481845281830111610b76578281602093846000960137010152565b906110f4578151805167ffffffffffffffff90818111610a0d5780610c6f85546109b7565b93601f948581116110a2575b5060209085831160011461103d57600092611032575b50508160011b916000199060031b1c19161783555b60018084016020860151805190848211610a0d578190610cc684546109b7565b878111610fdf575b50602090878311600114610f7c57600092610f71575b5050600019600383901b1c191690831b1790555b600284016040860151805190848211610a0d578190610d1784546109b7565b878111610f1e575b50602090878311600114610ebb57600092610eb0575b5050600019600383901b1c191690831b1790555b600384019260608601518051938411610a0d57610d6685546109b7565b828111610e68575b506020918411600114610dfb57928060079593819360e09896600094610df0575b50501b916000199060031b1c19161790555b6004810160018060a01b036080860151166bffffffffffffffffffffffff60a01b82541617905560a0840151600582015560c0840151600682015501910151151560ff80198354169116179055565b015192503880610d8f565b90601f9392931983169185600052816000209260005b818110610e5257509160e09795939185600798969410610e39575b505050811b019055610da1565b015160001960f88460031b161c19169055388080610e2c565b8284015185559386019360209384019301610e11565b8560005260206000208380870160051c82019260208810610ea7575b0160051c019084905b828110610e9b575050610d6e565b60008155018490610e8d565b92508192610e84565b015190503880610d35565b90859350601f1983169185600052816000209260005b818110610f0657508411610eed575b505050811b019055610d49565b015160001960f88460031b161c19169055388080610ee0565b82840151855588969094019360209384019301610ed1565b9091508360005260206000208780850160051c82019260208610610f68575b918791869594930160051c01915b828110610f59575050610d1f565b60008155859450879101610f4b565b92508192610f3d565b015190503880610ce4565b90859350601f1983169185600052816000209260005b818110610fc757508411610fae575b505050811b019055610cf8565b015160001960f88460031b161c19169055388080610fa1565b82840151855588969094019360209384019301610f92565b9091508360005260206000208780850160051c82019260208610611029575b918791869594930160051c01915b82811061101a575050610cce565b6000815585945087910161100c565b92508192610ffe565b015190503880610c91565b60008781528281209350601f198516905b81811061108a5750908460019594939210611071575b505050811b018355610ca6565b015160001960f88460031b161c19169055388080611064565b9293602060018192878601518155019501930161104e565b9091506000868152602081208680860160051c820193602087106110eb575b908695949392910160051c01915b8281106110dd575050610c7b565b8181558594506001016110cf565b935081936110c1565b634e487b7160e01b600052600060045260246000fd5b9060405161111781610a23565b60e060ff6007839561112881610a62565b855261113660018201610a62565b602086015261114760028201610a62565b604086015261115860038201610a62565b606086015260048101546001600160a01b03166080860152600581015460a0860152600681015460c0860152015416151591015256fea2646970667358221220e7a5fdf06ab2df96f95a8926748244cf46a51d4c6688d478a7e7c867c147e11d64736f6c63430008110033",
  "devdoc": {
    "kind": "dev",
    "methods": {},
    "version": 1
  },
  "userdoc": {
    "kind": "user",
    "methods": {},
    "version": 1
  },
  "storageLayout": {
    "storage": [
      {
        "astId": 477,
        "contract": "contracts/EventManager.sol:EventManager",
        "label": "events",
        "offset": 0,
        "slot": "0",
        "type": "t_array(t_struct(Event)458_storage)dyn_storage"
      }
    ],
    "types": {
      "t_address": {
        "encoding": "inplace",
        "label": "address",
        "numberOfBytes": "20"
      },
      "t_array(t_struct(Event)458_storage)dyn_storage": {
        "base": "t_struct(Event)458_storage",
        "encoding": "dynamic_array",
        "label": "struct EventManager.Event[]",
        "numberOfBytes": "32"
      },
      "t_bool": {
        "encoding": "inplace",
        "label": "bool",
        "numberOfBytes": "1"
      },
      "t_string_storage": {
        "encoding": "bytes",
        "label": "string",
        "numberOfBytes": "32"
      },
      "t_struct(Event)458_storage": {
        "encoding": "inplace",
        "label": "struct EventManager.Event",
        "members": [
          {
            "astId": 443,
            "contract": "contracts/EventManager.sol:EventManager",
            "label": "name",
            "offset": 0,
            "slot": "0",
            "type": "t_string_storage"
          },
          {
            "astId": 445,
            "contract": "contracts/EventManager.sol:EventManager",
            "label": "description",
            "offset": 0,
            "slot": "1",
            "type": "t_string_storage"
          },
          {
            "astId": 447,
            "contract": "contracts/EventManager.sol:EventManager",
            "label": "imageHash",
            "offset": 0,
            "slot": "2",
            "type": "t_string_storage"
          },
          {
            "astId": 449,
            "contract": "contracts/EventManager.sol:EventManager",
            "label": "location",
            "offset": 0,
            "slot": "3",
            "type": "t_string_storage"
          },
          {
            "astId": 451,
            "contract": "contracts/EventManager.sol:EventManager",
            "label": "owner",
            "offset": 0,
            "slot": "4",
            "type": "t_address"
          },
          {
            "astId": 453,
            "contract": "contracts/EventManager.sol:EventManager",
            "label": "startTime",
            "offset": 0,
            "slot": "5",
            "type": "t_uint256"
          },
          {
            "astId": 455,
            "contract": "contracts/EventManager.sol:EventManager",
            "label": "endTime",
            "offset": 0,
            "slot": "6",
            "type": "t_uint256"
          },
          {
            "astId": 457,
            "contract": "contracts/EventManager.sol:EventManager",
            "label": "active",
            "offset": 0,
            "slot": "7",
            "type": "t_bool"
          }
        ],
        "numberOfBytes": "256"
      },
      "t_uint256": {
        "encoding": "inplace",
        "label": "uint256",
        "numberOfBytes": "32"
      }
    }
  }
}