dataSources:
  - kind: ethereum
    mapping:
      abis:
        - file:
            /: /ipfs/QmNNXbGBzkEbo2PzXGiQ4XPP3o1FRqPGLNutG4oCcwmxzk
          name: Unlock
        - file:
            /: /ipfs/QmSvni1NFyUCmrf7tejvgy4Km7kVa58sp7PqpRCeAtajJ3
          name: PublicLock
        - file:
            /: /ipfs/QmcjkSb6conQSfykEQbtTTEwtwZpPvtsGLKm8Yh6hMWbsB
          name: PublicLockV11
        - file:
            /: /ipfs/QmbQ9LfEecz8JW835VtZcKY8TTwZKZAUrCF3p4wXy3EHtS
          name: PublicLockV9
      apiVersion: 0.0.7
      entities:
        - NewLock
      eventHandlers:
        - event: 'NewLock(indexed address,indexed address)'
          handler: handleNewLock
        - event: 'LockUpgraded(address,uint16)'
          handler: handleLockUpgraded
        - event: 'GNPChanged(uint256,uint256,address,uint256,address)'
          handler: handleGNPChanged
      file:
        /: /ipfs/QmYBDMByGqykrJWRKTdePGJfhKDJDEBQCVQLbkMU5hz1W2
      kind: ethereum/events
      language: wasm/assemblyscript
    name: Unlock
    network: polygon-zkevm
    source:
      abi: Unlock
      address: '0x259813B665C8f6074391028ef782e27B65840d89'
      startBlock: 0
description: Unlock Protocol & Associated contracts
features:
  - nonFatalErrors
schema:
  file:
    /: /ipfs/Qmaq6kHKN88DpvPRBjxSaH4hUdTbssPSim6R4RaB3Pzhcs
specVersion: 0.0.5
templates:
  - kind: ethereum
    mapping:
      abis:
        - file:
            /: /ipfs/QmSvni1NFyUCmrf7tejvgy4Km7kVa58sp7PqpRCeAtajJ3
          name: PublicLock
        - file:
            /: /ipfs/QmcjkSb6conQSfykEQbtTTEwtwZpPvtsGLKm8Yh6hMWbsB
          name: PublicLockV11
        - file:
            /: /ipfs/QmXFPJTvxuWQj44HdPs4dTxessusScbn4WbGMByppsdKsb
          name: PublicLockV12
        - file:
            /: /ipfs/QmbQ9LfEecz8JW835VtZcKY8TTwZKZAUrCF3p4wXy3EHtS
          name: PublicLockV9
      apiVersion: 0.0.7
      entities:
        - CancelKey
        - ExpirationChanged
        - ExpireKey
        - KeyExtended
        - KeyManagerChanged
        - LockManagerAdded
        - LockManagerRemoved
        - PricingChanged
        - Transfer
        - ReferrerFee
      eventHandlers:
        - event: 'LockConfig(uint256,uint256,uint256)'
          handler: handleLockConfig
          receipt: true
        - event: 'CancelKey(indexed uint256,indexed address,indexed address,uint256)'
          handler: handleCancelKey
          receipt: true
        - event: 'ExpirationChanged(indexed uint256,uint256,bool)'
          handler: handleExpirationChangedUntilV11
          receipt: true
        - event: 'ExpirationChanged(indexed uint256,uint256,uint256)'
          handler: handleExpirationChanged
          receipt: true
        - event: ExpireKey(indexed uint256)
          handler: handleExpireKey
          receipt: true
        - event: 'KeyExtended(indexed uint256,uint256)'
          handler: handleKeyExtended
          receipt: true
        - event: 'KeyManagerChanged(indexed uint256,indexed address)'
          handler: handleKeyManagerChanged
          receipt: true
        - event: 'RoleGranted(indexed bytes32,indexed address,indexed address)'
          handler: handleRoleGranted
          receipt: true
        - event: 'RoleRevoked(indexed bytes32,indexed address,indexed address)'
          handler: handleRoleRevoked
          receipt: true
        - event: 'PricingChanged(uint256,uint256,address,address)'
          handler: handlePricingChanged
          receipt: true
        - event: 'Transfer(indexed address,indexed address,indexed uint256)'
          handler: handleTransfer
          receipt: true
        - event: 'RenewKeyPurchase(indexed address,uint256)'
          handler: handleRenewKeyPurchase
          receipt: true
        - event: 'LockMetadata(string,string,string)'
          handler: handleLockMetadata
          receipt: true
        - event: 'ReferrerFee(indexed address,uint256)'
          handler: handleReferrerFees
          receipt: true
        - event: KeyGranterAdded(indexed address)
          handler: handleKeyGranterAdded
          receipt: true
        - event: KeyGranterRemoved(indexed address)
          handler: handleKeyGranterRemoved
          receipt: true
      file:
        /: /ipfs/QmYnwdp4swyD7rJhsKLACXDs2RUBPFKgMiNWFdQUEc19sy
      kind: ethereum/events
      language: wasm/assemblyscript
    name: PublicLock
    network: polygon-zkevm
    source:
      abi: PublicLock