{
  "account": {
    "State": {
      "Address": {
        "Type": "string",
        "Name": "Address"
      }
    },
    "Methods": {
      "0": {
        "Name": "Send",
        "Param": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "1": {
        "Name": "Constructor",
        "Param": {
          "Type": "string",
          "Name": "Address"
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "2": {
        "Name": "PubkeyAddress",
        "Param": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        },
        "Return": {
          "Type": "string",
          "Name": "Address"
        }
      }
    }
  },
  "cron": {
    "State": {
      "Entries": {
        "Type": "array",
        "Name": "",
        "Contains": {
          "Type": "object",
          "Name": "Entry",
          "Children": {
            "Receiver": {
              "Type": "string",
              "Name": "Address"
            },
            "MethodNum": {
              "Type": "number",
              "Name": "MethodNum"
            }
          }
        }
      }
    },
    "Methods": {
      "0": {
        "Name": "Send",
        "Param": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "1": {
        "Name": "Constructor",
        "Param": {
          "Type": "object",
          "Name": "ConstructorParams",
          "Children": {
            "Entries": {
              "Type": "array",
              "Name": "",
              "Contains": {
                "Type": "object",
                "Name": "Entry",
                "Children": {
                  "Receiver": {
                    "Type": "string",
                    "Name": "Address"
                  },
                  "MethodNum": {
                    "Type": "number",
                    "Name": "MethodNum"
                  }
                }
              }
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "2": {
        "Name": "EpochTick",
        "Param": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      }
    }
  },
  "datacap": {
    "State": {
      "Governor": {
        "Type": "string",
        "Name": "Address"
      },
      "Token": {
        "Type": "object",
        "Name": "TokenState",
        "Children": {
          "Supply": {
            "Type": "string",
            "Name": "FilecoinNumber"
          },
          "Balances": {
            "Type": "object",
            "Name": "Cid",
            "Children": {
              "/": {
                "Type": "string",
                "Name": "CidString"
              }
            }
          },
          "Allowances": {
            "Type": "object",
            "Name": "Cid",
            "Children": {
              "/": {
                "Type": "string",
                "Name": "CidString"
              }
            }
          },
          "HamtBitWidth": {
            "Type": "number",
            "Name": "uint64"
          }
        }
      }
    },
    "Methods": {
      "0": {
        "Name": "Send",
        "Param": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "1": {
        "Name": "Constructor",
        "Param": {
          "Type": "string",
          "Name": "Address"
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "114981429": {
        "Name": "TotalSupply",
        "Param": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        },
        "Return": {
          "Type": "string",
          "Name": "FilecoinNumber"
        }
      },
      "116935346": {
        "Name": "Mint",
        "Param": {
          "Type": "object",
          "Name": "MintParams",
          "Children": {
            "To": {
              "Type": "string",
              "Name": "Address"
            },
            "Amount": {
              "Type": "string",
              "Name": "FilecoinNumber"
            },
            "Operators": {
              "Type": "array",
              "Name": "",
              "Contains": {
                "Type": "string",
                "Name": "Address"
              }
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "MintReturn",
          "Children": {
            "Balance": {
              "Type": "string",
              "Name": "FilecoinNumber"
            },
            "Supply": {
              "Type": "string",
              "Name": "FilecoinNumber"
            },
            "RecipientData": {
              "Type": "bytes",
              "Name": ""
            }
          }
        }
      },
      "1434719642": {
        "Name": "Burn",
        "Param": {
          "Type": "object",
          "Name": "BurnParams",
          "Children": {
            "Amount": {
              "Type": "string",
              "Name": "FilecoinNumber"
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "BurnReturn",
          "Children": {
            "Balance": {
              "Type": "string",
              "Name": "FilecoinNumber"
            }
          }
        }
      },
      "1529376545": {
        "Name": "DecreaseAllowance",
        "Param": {
          "Type": "object",
          "Name": "DecreaseAllowanceParams",
          "Children": {
            "Operator": {
              "Type": "string",
              "Name": "Address"
            },
            "Decrease": {
              "Type": "string",
              "Name": "FilecoinNumber"
            }
          }
        },
        "Return": {
          "Type": "string",
          "Name": "FilecoinNumber"
        }
      },
      "1777121560": {
        "Name": "IncreaseAllowance",
        "Param": {
          "Type": "object",
          "Name": "IncreaseAllowanceParams",
          "Children": {
            "Operator": {
              "Type": "string",
              "Name": "Address"
            },
            "Increase": {
              "Type": "string",
              "Name": "FilecoinNumber"
            }
          }
        },
        "Return": {
          "Type": "string",
          "Name": "FilecoinNumber"
        }
      },
      "2061153854": {
        "Name": "Symbol",
        "Param": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        },
        "Return": {
          "Type": "string",
          "Name": "CborString"
        }
      },
      "2624896501": {
        "Name": "Destroy",
        "Param": {
          "Type": "object",
          "Name": "DestroyParams",
          "Children": {
            "Owner": {
              "Type": "string",
              "Name": "Address"
            },
            "Amount": {
              "Type": "string",
              "Name": "FilecoinNumber"
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "BurnReturn",
          "Children": {
            "Balance": {
              "Type": "string",
              "Name": "FilecoinNumber"
            }
          }
        }
      },
      "2765635761": {
        "Name": "RevokeAllowance",
        "Param": {
          "Type": "object",
          "Name": "RevokeAllowanceParams",
          "Children": {
            "Operator": {
              "Type": "string",
              "Name": "Address"
            }
          }
        },
        "Return": {
          "Type": "string",
          "Name": "FilecoinNumber"
        }
      },
      "2979674018": {
        "Name": "BurnFrom",
        "Param": {
          "Type": "object",
          "Name": "BurnFromParams",
          "Children": {
            "Owner": {
              "Type": "string",
              "Name": "Address"
            },
            "Amount": {
              "Type": "string",
              "Name": "FilecoinNumber"
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "BurnFromReturn",
          "Children": {
            "Balance": {
              "Type": "string",
              "Name": "FilecoinNumber"
            },
            "Allowance": {
              "Type": "string",
              "Name": "FilecoinNumber"
            }
          }
        }
      },
      "3261979605": {
        "Name": "Balance",
        "Param": {
          "Type": "string",
          "Name": "Address"
        },
        "Return": {
          "Type": "string",
          "Name": "FilecoinNumber"
        }
      },
      "3621052141": {
        "Name": "TransferFrom",
        "Param": {
          "Type": "object",
          "Name": "TransferFromParams",
          "Children": {
            "From": {
              "Type": "string",
              "Name": "Address"
            },
            "To": {
              "Type": "string",
              "Name": "Address"
            },
            "Amount": {
              "Type": "string",
              "Name": "FilecoinNumber"
            },
            "OperatorData": {
              "Type": "bytes",
              "Name": ""
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "TransferFromReturn",
          "Children": {
            "FromBalance": {
              "Type": "string",
              "Name": "FilecoinNumber"
            },
            "ToBalance": {
              "Type": "string",
              "Name": "FilecoinNumber"
            },
            "Allowance": {
              "Type": "string",
              "Name": "FilecoinNumber"
            },
            "RecipientData": {
              "Type": "bytes",
              "Name": ""
            }
          }
        }
      },
      "3936767397": {
        "Name": "Granularity",
        "Param": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        },
        "Return": {
          "Type": "number",
          "Name": "CborInt"
        }
      },
      "4205072950": {
        "Name": "Allowance",
        "Param": {
          "Type": "object",
          "Name": "GetAllowanceParams",
          "Children": {
            "Owner": {
              "Type": "string",
              "Name": "Address"
            },
            "Operator": {
              "Type": "string",
              "Name": "Address"
            }
          }
        },
        "Return": {
          "Type": "string",
          "Name": "FilecoinNumber"
        }
      },
      "48890204": {
        "Name": "Name",
        "Param": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        },
        "Return": {
          "Type": "string",
          "Name": "CborString"
        }
      },
      "80475954": {
        "Name": "Transfer",
        "Param": {
          "Type": "object",
          "Name": "TransferFromParams",
          "Children": {
            "From": {
              "Type": "string",
              "Name": "Address"
            },
            "To": {
              "Type": "string",
              "Name": "Address"
            },
            "Amount": {
              "Type": "string",
              "Name": "FilecoinNumber"
            },
            "OperatorData": {
              "Type": "bytes",
              "Name": ""
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "TransferFromReturn",
          "Children": {
            "FromBalance": {
              "Type": "string",
              "Name": "FilecoinNumber"
            },
            "ToBalance": {
              "Type": "string",
              "Name": "FilecoinNumber"
            },
            "Allowance": {
              "Type": "string",
              "Name": "FilecoinNumber"
            },
            "RecipientData": {
              "Type": "bytes",
              "Name": ""
            }
          }
        }
      }
    }
  },
  "eam": {
    "State": null,
    "Methods": {
      "0": {
        "Name": "Send",
        "Param": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "1": {
        "Name": "Constructor",
        "Param": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "2": {
        "Name": "Create",
        "Param": {
          "Type": "object",
          "Name": "CreateParams",
          "Children": {
            "Initcode": {
              "Type": "bytes",
              "Name": ""
            },
            "Nonce": {
              "Type": "number",
              "Name": "uint64"
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "CreateReturn",
          "Children": {
            "ActorID": {
              "Type": "number",
              "Name": "uint64"
            },
            "RobustAddress": {
              "Type": "string",
              "Name": "Address"
            },
            "EthAddress": {
              "Type": "bytes",
              "Name": ""
            }
          }
        }
      },
      "3": {
        "Name": "Create2",
        "Param": {
          "Type": "object",
          "Name": "Create2Params",
          "Children": {
            "Initcode": {
              "Type": "bytes",
              "Name": ""
            },
            "Salt": {
              "Type": "bytes",
              "Name": ""
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "Create2Return",
          "Children": {
            "ActorID": {
              "Type": "number",
              "Name": "uint64"
            },
            "RobustAddress": {
              "Type": "string",
              "Name": "Address"
            },
            "EthAddress": {
              "Type": "bytes",
              "Name": ""
            }
          }
        }
      },
      "4": {
        "Name": "CreateExternal",
        "Param": {
          "Type": "bytes",
          "Name": "CborBytes"
        },
        "Return": {
          "Type": "object",
          "Name": "CreateExternalReturn",
          "Children": {
            "ActorID": {
              "Type": "number",
              "Name": "uint64"
            },
            "RobustAddress": {
              "Type": "string",
              "Name": "Address"
            },
            "EthAddress": {
              "Type": "bytes",
              "Name": ""
            }
          }
        }
      }
    }
  },
  "ethaccount": {
    "State": null,
    "Methods": {
      "0": {
        "Name": "Send",
        "Param": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "1": {
        "Name": "Constructor",
        "Param": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      }
    }
  },
  "evm": {
    "State": {
      "Bytecode": {
        "Type": "object",
        "Name": "Cid",
        "Children": {
          "/": {
            "Type": "string",
            "Name": "CidString"
          }
        }
      },
      "BytecodeHash": {
        "Type": "bytes",
        "Name": ""
      },
      "ContractState": {
        "Type": "object",
        "Name": "Cid",
        "Children": {
          "/": {
            "Type": "string",
            "Name": "CidString"
          }
        }
      },
      "Nonce": {
        "Type": "number",
        "Name": "uint64"
      },
      "Tombstone": {
        "Type": "object",
        "Name": "Tombstone",
        "Children": {
          "Origin": {
            "Type": "number",
            "Name": "ActorID"
          },
          "Nonce": {
            "Type": "number",
            "Name": "uint64"
          }
        }
      }
    },
    "Methods": {
      "0": {
        "Name": "Send",
        "Param": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "1": {
        "Name": "Constructor",
        "Param": {
          "Type": "object",
          "Name": "ConstructorParams",
          "Children": {
            "Creator": {
              "Type": "bytes",
              "Name": ""
            },
            "Initcode": {
              "Type": "bytes",
              "Name": ""
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "2": {
        "Name": "Resurrect",
        "Param": {
          "Type": "object",
          "Name": "ConstructorParams",
          "Children": {
            "Creator": {
              "Type": "bytes",
              "Name": ""
            },
            "Initcode": {
              "Type": "bytes",
              "Name": ""
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "3": {
        "Name": "GetBytecode",
        "Param": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        },
        "Return": {
          "Type": "object",
          "Name": "GetBytecodeReturn",
          "Children": {
            "Cid": {
              "Type": "object",
              "Name": "Cid",
              "Children": {
                "/": {
                  "Type": "string",
                  "Name": "CidString"
                }
              }
            }
          }
        }
      },
      "3844450837": {
        "Name": "InvokeEVM",
        "Param": {
          "Type": "bytes",
          "Name": "CborBytes"
        },
        "Return": {
          "Type": "bytes",
          "Name": "CborBytes"
        }
      },
      "4": {
        "Name": "GetBytecodeHash",
        "Param": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        },
        "Return": {
          "Type": "bytes",
          "Name": "CborBytes"
        }
      },
      "5": {
        "Name": "GetStorageAt",
        "Param": {
          "Type": "object",
          "Name": "GetStorageAtParams",
          "Children": {
            "StorageKey": {
              "Type": "bytes",
              "Name": ""
            }
          }
        },
        "Return": {
          "Type": "bytes",
          "Name": "CborBytes"
        }
      },
      "6": {
        "Name": "InvokeContractDelegate",
        "Param": {
          "Type": "object",
          "Name": "DelegateCallParams",
          "Children": {
            "Code": {
              "Type": "object",
              "Name": "Cid",
              "Children": {
                "/": {
                  "Type": "string",
                  "Name": "CidString"
                }
              }
            },
            "Input": {
              "Type": "bytes",
              "Name": ""
            },
            "Caller": {
              "Type": "bytes",
              "Name": ""
            },
            "Value": {
              "Type": "string",
              "Name": "FilecoinNumber"
            }
          }
        },
        "Return": {
          "Type": "bytes",
          "Name": "CborBytes"
        }
      }
    }
  },
  "init": {
    "State": {
      "AddressMap": {
        "Type": "object",
        "Name": "Cid",
        "Children": {
          "/": {
            "Type": "string",
            "Name": "CidString"
          }
        }
      },
      "NextID": {
        "Type": "number",
        "Name": "ActorID"
      },
      "NetworkName": {
        "Type": "string",
        "Name": "string"
      }
    },
    "Methods": {
      "0": {
        "Name": "Send",
        "Param": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "1": {
        "Name": "Constructor",
        "Param": {
          "Type": "object",
          "Name": "ConstructorParams",
          "Children": {
            "NetworkName": {
              "Type": "string",
              "Name": "string"
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "2": {
        "Name": "Exec",
        "Param": {
          "Type": "object",
          "Name": "ExecParams",
          "Children": {
            "CodeCID": {
              "Type": "object",
              "Name": "Cid",
              "Children": {
                "/": {
                  "Type": "string",
                  "Name": "CidString"
                }
              }
            },
            "ConstructorParams": {
              "Type": "bytes",
              "Name": ""
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "ExecReturn",
          "Children": {
            "IDAddress": {
              "Type": "string",
              "Name": "Address"
            },
            "RobustAddress": {
              "Type": "string",
              "Name": "Address"
            }
          }
        }
      }
    }
  },
  "multisig": {
    "State": {
      "Signers": {
        "Type": "array",
        "Name": "",
        "Contains": {
          "Type": "string",
          "Name": "Address"
        }
      },
      "NumApprovalsThreshold": {
        "Type": "number",
        "Name": "uint64"
      },
      "NextTxnID": {
        "Type": "number",
        "Name": "TxnID"
      },
      "InitialBalance": {
        "Type": "string",
        "Name": "FilecoinNumber"
      },
      "StartEpoch": {
        "Type": "number",
        "Name": "ChainEpoch"
      },
      "UnlockDuration": {
        "Type": "number",
        "Name": "ChainEpoch"
      },
      "PendingTxns": {
        "Type": "object",
        "Name": "Cid",
        "Children": {
          "/": {
            "Type": "string",
            "Name": "CidString"
          }
        }
      }
    },
    "Methods": {
      "0": {
        "Name": "Send",
        "Param": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "1": {
        "Name": "Constructor",
        "Param": {
          "Type": "object",
          "Name": "ConstructorParams",
          "Children": {
            "Signers": {
              "Type": "array",
              "Name": "",
              "Contains": {
                "Type": "string",
                "Name": "Address"
              }
            },
            "NumApprovalsThreshold": {
              "Type": "number",
              "Name": "uint64"
            },
            "UnlockDuration": {
              "Type": "number",
              "Name": "ChainEpoch"
            },
            "StartEpoch": {
              "Type": "number",
              "Name": "ChainEpoch"
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "2": {
        "Name": "Propose",
        "Param": {
          "Type": "object",
          "Name": "ProposeParams",
          "Children": {
            "To": {
              "Type": "string",
              "Name": "Address"
            },
            "Value": {
              "Type": "string",
              "Name": "FilecoinNumber"
            },
            "Method": {
              "Type": "number",
              "Name": "MethodNum"
            },
            "Params": {
              "Type": "bytes",
              "Name": ""
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "ProposeReturn",
          "Children": {
            "TxnID": {
              "Type": "number",
              "Name": "TxnID"
            },
            "Applied": {
              "Type": "boolean",
              "Name": "bool"
            },
            "Code": {
              "Type": "number",
              "Name": "ExitCode"
            },
            "Ret": {
              "Type": "bytes",
              "Name": ""
            }
          }
        }
      },
      "3": {
        "Name": "Approve",
        "Param": {
          "Type": "object",
          "Name": "TxnIDParams",
          "Children": {
            "ID": {
              "Type": "number",
              "Name": "TxnID"
            },
            "ProposalHash": {
              "Type": "bytes",
              "Name": ""
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "ApproveReturn",
          "Children": {
            "Applied": {
              "Type": "boolean",
              "Name": "bool"
            },
            "Code": {
              "Type": "number",
              "Name": "ExitCode"
            },
            "Ret": {
              "Type": "bytes",
              "Name": ""
            }
          }
        }
      },
      "4": {
        "Name": "Cancel",
        "Param": {
          "Type": "object",
          "Name": "TxnIDParams",
          "Children": {
            "ID": {
              "Type": "number",
              "Name": "TxnID"
            },
            "ProposalHash": {
              "Type": "bytes",
              "Name": ""
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "5": {
        "Name": "AddSigner",
        "Param": {
          "Type": "object",
          "Name": "AddSignerParams",
          "Children": {
            "Signer": {
              "Type": "string",
              "Name": "Address"
            },
            "Increase": {
              "Type": "boolean",
              "Name": "bool"
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "6": {
        "Name": "RemoveSigner",
        "Param": {
          "Type": "object",
          "Name": "RemoveSignerParams",
          "Children": {
            "Signer": {
              "Type": "string",
              "Name": "Address"
            },
            "Decrease": {
              "Type": "boolean",
              "Name": "bool"
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "7": {
        "Name": "SwapSigner",
        "Param": {
          "Type": "object",
          "Name": "SwapSignerParams",
          "Children": {
            "From": {
              "Type": "string",
              "Name": "Address"
            },
            "To": {
              "Type": "string",
              "Name": "Address"
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "8": {
        "Name": "ChangeNumApprovalsThreshold",
        "Param": {
          "Type": "object",
          "Name": "ChangeNumApprovalsThresholdParams",
          "Children": {
            "NewThreshold": {
              "Type": "number",
              "Name": "uint64"
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "9": {
        "Name": "LockBalance",
        "Param": {
          "Type": "object",
          "Name": "LockBalanceParams",
          "Children": {
            "StartEpoch": {
              "Type": "number",
              "Name": "ChainEpoch"
            },
            "UnlockDuration": {
              "Type": "number",
              "Name": "ChainEpoch"
            },
            "Amount": {
              "Type": "string",
              "Name": "FilecoinNumber"
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      }
    }
  },
  "paymentchannel": {
    "State": {
      "From": {
        "Type": "string",
        "Name": "Address"
      },
      "To": {
        "Type": "string",
        "Name": "Address"
      },
      "ToSend": {
        "Type": "string",
        "Name": "FilecoinNumber"
      },
      "SettlingAt": {
        "Type": "number",
        "Name": "ChainEpoch"
      },
      "MinSettleHeight": {
        "Type": "number",
        "Name": "ChainEpoch"
      },
      "LaneStates": {
        "Type": "object",
        "Name": "Cid",
        "Children": {
          "/": {
            "Type": "string",
            "Name": "CidString"
          }
        }
      }
    },
    "Methods": {
      "0": {
        "Name": "Send",
        "Param": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "1": {
        "Name": "Constructor",
        "Param": {
          "Type": "object",
          "Name": "ConstructorParams",
          "Children": {
            "From": {
              "Type": "string",
              "Name": "Address"
            },
            "To": {
              "Type": "string",
              "Name": "Address"
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "2": {
        "Name": "UpdateChannelState",
        "Param": {
          "Type": "object",
          "Name": "UpdateChannelStateParams",
          "Children": {
            "Sv": {
              "Type": "object",
              "Name": "SignedVoucher",
              "Children": {
                "ChannelAddr": {
                  "Type": "string",
                  "Name": "Address"
                },
                "TimeLockMin": {
                  "Type": "number",
                  "Name": "ChainEpoch"
                },
                "TimeLockMax": {
                  "Type": "number",
                  "Name": "ChainEpoch"
                },
                "SecretHash": {
                  "Type": "bytes",
                  "Name": ""
                },
                "Extra": {
                  "Type": "object",
                  "Name": "ModVerifyParams",
                  "Children": {
                    "Actor": {
                      "Type": "string",
                      "Name": "Address"
                    },
                    "Method": {
                      "Type": "number",
                      "Name": "MethodNum"
                    },
                    "Data": {
                      "Type": "bytes",
                      "Name": ""
                    }
                  }
                },
                "Lane": {
                  "Type": "number",
                  "Name": "uint64"
                },
                "Nonce": {
                  "Type": "number",
                  "Name": "uint64"
                },
                "Amount": {
                  "Type": "string",
                  "Name": "FilecoinNumber"
                },
                "MinSettleHeight": {
                  "Type": "number",
                  "Name": "ChainEpoch"
                },
                "Merges": {
                  "Type": "array",
                  "Name": "",
                  "Contains": {
                    "Type": "object",
                    "Name": "Merge",
                    "Children": {
                      "Lane": {
                        "Type": "number",
                        "Name": "uint64"
                      },
                      "Nonce": {
                        "Type": "number",
                        "Name": "uint64"
                      }
                    }
                  }
                },
                "Signature": {
                  "Type": "object",
                  "Name": "Signature",
                  "Children": {
                    "Type": {
                      "Type": "number",
                      "Name": "SigType"
                    },
                    "Data": {
                      "Type": "bytes",
                      "Name": ""
                    }
                  }
                }
              }
            },
            "Secret": {
              "Type": "bytes",
              "Name": ""
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "3": {
        "Name": "Settle",
        "Param": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "4": {
        "Name": "Collect",
        "Param": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      }
    }
  },
  "reward": {
    "State": {
      "CumsumBaseline": {
        "Type": "string",
        "Name": "FilecoinNumber"
      },
      "CumsumRealized": {
        "Type": "string",
        "Name": "FilecoinNumber"
      },
      "EffectiveNetworkTime": {
        "Type": "number",
        "Name": "ChainEpoch"
      },
      "EffectiveBaselinePower": {
        "Type": "string",
        "Name": "FilecoinNumber"
      },
      "ThisEpochReward": {
        "Type": "string",
        "Name": "FilecoinNumber"
      },
      "ThisEpochRewardSmoothed": {
        "Type": "object",
        "Name": "FilterEstimate",
        "Children": {
          "PositionEstimate": {
            "Type": "string",
            "Name": "FilecoinNumber"
          },
          "VelocityEstimate": {
            "Type": "string",
            "Name": "FilecoinNumber"
          }
        }
      },
      "ThisEpochBaselinePower": {
        "Type": "string",
        "Name": "FilecoinNumber"
      },
      "Epoch": {
        "Type": "number",
        "Name": "ChainEpoch"
      },
      "TotalStoragePowerReward": {
        "Type": "string",
        "Name": "FilecoinNumber"
      },
      "SimpleTotal": {
        "Type": "string",
        "Name": "FilecoinNumber"
      },
      "BaselineTotal": {
        "Type": "string",
        "Name": "FilecoinNumber"
      }
    },
    "Methods": {
      "0": {
        "Name": "Send",
        "Param": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "1": {
        "Name": "Constructor",
        "Param": {
          "Type": "string",
          "Name": "FilecoinNumber"
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "2": {
        "Name": "AwardBlockReward",
        "Param": {
          "Type": "object",
          "Name": "AwardBlockRewardParams",
          "Children": {
            "Miner": {
              "Type": "string",
              "Name": "Address"
            },
            "Penalty": {
              "Type": "string",
              "Name": "FilecoinNumber"
            },
            "GasReward": {
              "Type": "string",
              "Name": "FilecoinNumber"
            },
            "WinCount": {
              "Type": "number",
              "Name": "int64"
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "3": {
        "Name": "ThisEpochReward",
        "Param": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        },
        "Return": {
          "Type": "object",
          "Name": "ThisEpochRewardReturn",
          "Children": {
            "ThisEpochRewardSmoothed": {
              "Type": "object",
              "Name": "FilterEstimate",
              "Children": {
                "PositionEstimate": {
                  "Type": "string",
                  "Name": "FilecoinNumber"
                },
                "VelocityEstimate": {
                  "Type": "string",
                  "Name": "FilecoinNumber"
                }
              }
            },
            "ThisEpochBaselinePower": {
              "Type": "string",
              "Name": "FilecoinNumber"
            }
          }
        }
      },
      "4": {
        "Name": "UpdateNetworkKPI",
        "Param": {
          "Type": "string",
          "Name": "FilecoinNumber"
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      }
    }
  },
  "storagemarket": {
    "State": {
      "Proposals": {
        "Type": "object",
        "Name": "Cid",
        "Children": {
          "/": {
            "Type": "string",
            "Name": "CidString"
          }
        }
      },
      "States": {
        "Type": "object",
        "Name": "Cid",
        "Children": {
          "/": {
            "Type": "string",
            "Name": "CidString"
          }
        }
      },
      "PendingProposals": {
        "Type": "object",
        "Name": "Cid",
        "Children": {
          "/": {
            "Type": "string",
            "Name": "CidString"
          }
        }
      },
      "EscrowTable": {
        "Type": "object",
        "Name": "Cid",
        "Children": {
          "/": {
            "Type": "string",
            "Name": "CidString"
          }
        }
      },
      "LockedTable": {
        "Type": "object",
        "Name": "Cid",
        "Children": {
          "/": {
            "Type": "string",
            "Name": "CidString"
          }
        }
      },
      "NextID": {
        "Type": "number",
        "Name": "DealID"
      },
      "DealOpsByEpoch": {
        "Type": "object",
        "Name": "Cid",
        "Children": {
          "/": {
            "Type": "string",
            "Name": "CidString"
          }
        }
      },
      "LastCron": {
        "Type": "number",
        "Name": "ChainEpoch"
      },
      "TotalClientLockedCollateral": {
        "Type": "string",
        "Name": "FilecoinNumber"
      },
      "TotalProviderLockedCollateral": {
        "Type": "string",
        "Name": "FilecoinNumber"
      },
      "TotalClientStorageFee": {
        "Type": "string",
        "Name": "FilecoinNumber"
      },
      "PendingDealAllocationIds": {
        "Type": "object",
        "Name": "Cid",
        "Children": {
          "/": {
            "Type": "string",
            "Name": "CidString"
          }
        }
      },
      "ProviderSectors": {
        "Type": "object",
        "Name": "Cid",
        "Children": {
          "/": {
            "Type": "string",
            "Name": "CidString"
          }
        }
      }
    },
    "Methods": {
      "0": {
        "Name": "Send",
        "Param": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "1": {
        "Name": "Constructor",
        "Param": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "2": {
        "Name": "AddBalance",
        "Param": {
          "Type": "string",
          "Name": "Address"
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "3": {
        "Name": "WithdrawBalance",
        "Param": {
          "Type": "object",
          "Name": "WithdrawBalanceParams",
          "Children": {
            "ProviderOrClientAddress": {
              "Type": "string",
              "Name": "Address"
            },
            "Amount": {
              "Type": "string",
              "Name": "FilecoinNumber"
            }
          }
        },
        "Return": {
          "Type": "string",
          "Name": "FilecoinNumber"
        }
      },
      "4": {
        "Name": "PublishStorageDeals",
        "Param": {
          "Type": "object",
          "Name": "PublishStorageDealsParams",
          "Children": {
            "Deals": {
              "Type": "array",
              "Name": "",
              "Contains": {
                "Type": "object",
                "Name": "ClientDealProposal",
                "Children": {
                  "Proposal": {
                    "Type": "object",
                    "Name": "DealProposal",
                    "Children": {
                      "PieceCID": {
                        "Type": "object",
                        "Name": "Cid",
                        "Children": {
                          "/": {
                            "Type": "string",
                            "Name": "CidString"
                          }
                        }
                      },
                      "PieceSize": {
                        "Type": "number",
                        "Name": "PaddedPieceSize"
                      },
                      "VerifiedDeal": {
                        "Type": "boolean",
                        "Name": "bool"
                      },
                      "Client": {
                        "Type": "string",
                        "Name": "Address"
                      },
                      "Provider": {
                        "Type": "string",
                        "Name": "Address"
                      },
                      "Label": {
                        "Type": "object",
                        "Name": "DealLabel",
                        "Children": {
                          "bs": {
                            "Type": "bytes",
                            "Name": ""
                          },
                          "notString": {
                            "Type": "boolean",
                            "Name": "bool"
                          }
                        }
                      },
                      "StartEpoch": {
                        "Type": "number",
                        "Name": "ChainEpoch"
                      },
                      "EndEpoch": {
                        "Type": "number",
                        "Name": "ChainEpoch"
                      },
                      "StoragePricePerEpoch": {
                        "Type": "string",
                        "Name": "FilecoinNumber"
                      },
                      "ProviderCollateral": {
                        "Type": "string",
                        "Name": "FilecoinNumber"
                      },
                      "ClientCollateral": {
                        "Type": "string",
                        "Name": "FilecoinNumber"
                      }
                    }
                  },
                  "ClientSignature": {
                    "Type": "object",
                    "Name": "Signature",
                    "Children": {
                      "Type": {
                        "Type": "number",
                        "Name": "SigType"
                      },
                      "Data": {
                        "Type": "bytes",
                        "Name": ""
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "PublishStorageDealsReturn",
          "Children": {
            "IDs": {
              "Type": "array",
              "Name": "",
              "Contains": {
                "Type": "number",
                "Name": "DealID"
              }
            },
            "ValidDeals": {
              "Type": "array",
              "Name": "BitField",
              "Contains": {
                "Type": "number",
                "Name": "Bit"
              }
            }
          }
        }
      },
      "5": {
        "Name": "VerifyDealsForActivation",
        "Param": {
          "Type": "object",
          "Name": "VerifyDealsForActivationParams",
          "Children": {
            "Sectors": {
              "Type": "array",
              "Name": "",
              "Contains": {
                "Type": "object",
                "Name": "SectorDeals",
                "Children": {
                  "SectorExpiry": {
                    "Type": "number",
                    "Name": "ChainEpoch"
                  },
                  "DealIDs": {
                    "Type": "array",
                    "Name": "",
                    "Contains": {
                      "Type": "number",
                      "Name": "DealID"
                    }
                  }
                }
              }
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "VerifyDealsForActivationReturn",
          "Children": {
            "Sectors": {
              "Type": "array",
              "Name": "",
              "Contains": {
                "Type": "object",
                "Name": "SectorWeights",
                "Children": {
                  "DealSpace": {
                    "Type": "number",
                    "Name": "uint64"
                  },
                  "DealWeight": {
                    "Type": "string",
                    "Name": "FilecoinNumber"
                  },
                  "VerifiedDealWeight": {
                    "Type": "string",
                    "Name": "FilecoinNumber"
                  }
                }
              }
            }
          }
        }
      },
      "6": {
        "Name": "ActivateDeals",
        "Param": {
          "Type": "object",
          "Name": "ActivateDealsParams",
          "Children": {
            "DealIDs": {
              "Type": "array",
              "Name": "",
              "Contains": {
                "Type": "number",
                "Name": "DealID"
              }
            },
            "SectorExpiry": {
              "Type": "number",
              "Name": "ChainEpoch"
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "7": {
        "Name": "OnMinerSectorsTerminate",
        "Param": {
          "Type": "object",
          "Name": "OnMinerSectorsTerminateParams",
          "Children": {
            "Epoch": {
              "Type": "number",
              "Name": "ChainEpoch"
            },
            "DealIDs": {
              "Type": "array",
              "Name": "",
              "Contains": {
                "Type": "number",
                "Name": "DealID"
              }
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "8": {
        "Name": "ComputeDataCommitment",
        "Param": {
          "Type": "object",
          "Name": "ComputeDataCommitmentParams",
          "Children": {
            "Inputs": {
              "Type": "array",
              "Name": "",
              "Contains": {
                "Type": "object",
                "Name": "SectorDataSpec",
                "Children": {
                  "DealIDs": {
                    "Type": "array",
                    "Name": "",
                    "Contains": {
                      "Type": "number",
                      "Name": "DealID"
                    }
                  },
                  "SectorType": {
                    "Type": "number",
                    "Name": "RegisteredSealProof"
                  }
                }
              }
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "ComputeDataCommitmentReturn",
          "Children": {
            "CommDs": {
              "Type": "array",
              "Name": "",
              "Contains": {
                "Type": "object",
                "Name": "CborCid",
                "Children": {
                  "str": {
                    "Type": "string",
                    "Name": "string"
                  }
                }
              }
            }
          }
        }
      },
      "9": {
        "Name": "CronTick",
        "Param": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      }
    }
  },
  "storageminer": {
    "State": {
      "Info": {
        "Type": "object",
        "Name": "Cid",
        "Children": {
          "/": {
            "Type": "string",
            "Name": "CidString"
          }
        }
      },
      "PreCommitDeposits": {
        "Type": "string",
        "Name": "FilecoinNumber"
      },
      "LockedFunds": {
        "Type": "string",
        "Name": "FilecoinNumber"
      },
      "VestingFunds": {
        "Type": "object",
        "Name": "Cid",
        "Children": {
          "/": {
            "Type": "string",
            "Name": "CidString"
          }
        }
      },
      "FeeDebt": {
        "Type": "string",
        "Name": "FilecoinNumber"
      },
      "InitialPledge": {
        "Type": "string",
        "Name": "FilecoinNumber"
      },
      "PreCommittedSectors": {
        "Type": "object",
        "Name": "Cid",
        "Children": {
          "/": {
            "Type": "string",
            "Name": "CidString"
          }
        }
      },
      "PreCommittedSectorsCleanUp": {
        "Type": "object",
        "Name": "Cid",
        "Children": {
          "/": {
            "Type": "string",
            "Name": "CidString"
          }
        }
      },
      "AllocatedSectors": {
        "Type": "object",
        "Name": "Cid",
        "Children": {
          "/": {
            "Type": "string",
            "Name": "CidString"
          }
        }
      },
      "Sectors": {
        "Type": "object",
        "Name": "Cid",
        "Children": {
          "/": {
            "Type": "string",
            "Name": "CidString"
          }
        }
      },
      "ProvingPeriodStart": {
        "Type": "number",
        "Name": "ChainEpoch"
      },
      "CurrentDeadline": {
        "Type": "number",
        "Name": "uint64"
      },
      "Deadlines": {
        "Type": "object",
        "Name": "Cid",
        "Children": {
          "/": {
            "Type": "string",
            "Name": "CidString"
          }
        }
      },
      "EarlyTerminations": {
        "Type": "array",
        "Name": "BitField",
        "Contains": {
          "Type": "number",
          "Name": "Bit"
        }
      },
      "DeadlineCronActive": {
        "Type": "boolean",
        "Name": "bool"
      }
    },
    "Methods": {
      "0": {
        "Name": "Send",
        "Param": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "1": {
        "Name": "Constructor",
        "Param": {
          "Type": "object",
          "Name": "MinerConstructorParams",
          "Children": {
            "OwnerAddr": {
              "Type": "string",
              "Name": "Address"
            },
            "WorkerAddr": {
              "Type": "string",
              "Name": "Address"
            },
            "ControlAddrs": {
              "Type": "array",
              "Name": "",
              "Contains": {
                "Type": "string",
                "Name": "Address"
              }
            },
            "WindowPoStProofType": {
              "Type": "number",
              "Name": "RegisteredPoStProof"
            },
            "PeerId": {
              "Type": "bytes",
              "Name": ""
            },
            "Multiaddrs": {
              "Type": "array",
              "Name": "",
              "Contains": {
                "Type": "bytes",
                "Name": ""
              }
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "10": {
        "Name": "DeclareFaults",
        "Param": {
          "Type": "object",
          "Name": "DeclareFaultsParams",
          "Children": {
            "Faults": {
              "Type": "array",
              "Name": "",
              "Contains": {
                "Type": "object",
                "Name": "FaultDeclaration",
                "Children": {
                  "Deadline": {
                    "Type": "number",
                    "Name": "uint64"
                  },
                  "Partition": {
                    "Type": "number",
                    "Name": "uint64"
                  },
                  "Sectors": {
                    "Type": "array",
                    "Name": "BitField",
                    "Contains": {
                      "Type": "number",
                      "Name": "Bit"
                    }
                  }
                }
              }
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "11": {
        "Name": "DeclareFaultsRecovered",
        "Param": {
          "Type": "object",
          "Name": "DeclareFaultsRecoveredParams",
          "Children": {
            "Recoveries": {
              "Type": "array",
              "Name": "",
              "Contains": {
                "Type": "object",
                "Name": "RecoveryDeclaration",
                "Children": {
                  "Deadline": {
                    "Type": "number",
                    "Name": "uint64"
                  },
                  "Partition": {
                    "Type": "number",
                    "Name": "uint64"
                  },
                  "Sectors": {
                    "Type": "array",
                    "Name": "BitField",
                    "Contains": {
                      "Type": "number",
                      "Name": "Bit"
                    }
                  }
                }
              }
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "12": {
        "Name": "OnDeferredCronEvent",
        "Param": {
          "Type": "object",
          "Name": "DeferredCronEventParams",
          "Children": {
            "EventPayload": {
              "Type": "bytes",
              "Name": ""
            },
            "RewardSmoothed": {
              "Type": "object",
              "Name": "FilterEstimate",
              "Children": {
                "PositionEstimate": {
                  "Type": "string",
                  "Name": "FilecoinNumber"
                },
                "VelocityEstimate": {
                  "Type": "string",
                  "Name": "FilecoinNumber"
                }
              }
            },
            "QualityAdjPowerSmoothed": {
              "Type": "object",
              "Name": "FilterEstimate",
              "Children": {
                "PositionEstimate": {
                  "Type": "string",
                  "Name": "FilecoinNumber"
                },
                "VelocityEstimate": {
                  "Type": "string",
                  "Name": "FilecoinNumber"
                }
              }
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "13": {
        "Name": "CheckSectorProven",
        "Param": {
          "Type": "object",
          "Name": "CheckSectorProvenParams",
          "Children": {
            "SectorNumber": {
              "Type": "number",
              "Name": "SectorNumber"
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "14": {
        "Name": "ApplyRewards",
        "Param": {
          "Type": "object",
          "Name": "ApplyRewardParams",
          "Children": {
            "Reward": {
              "Type": "string",
              "Name": "FilecoinNumber"
            },
            "Penalty": {
              "Type": "string",
              "Name": "FilecoinNumber"
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "15": {
        "Name": "ReportConsensusFault",
        "Param": {
          "Type": "object",
          "Name": "ReportConsensusFaultParams",
          "Children": {
            "BlockHeader1": {
              "Type": "bytes",
              "Name": ""
            },
            "BlockHeader2": {
              "Type": "bytes",
              "Name": ""
            },
            "BlockHeaderExtra": {
              "Type": "bytes",
              "Name": ""
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "16": {
        "Name": "WithdrawBalance",
        "Param": {
          "Type": "object",
          "Name": "WithdrawBalanceParams",
          "Children": {
            "AmountRequested": {
              "Type": "string",
              "Name": "FilecoinNumber"
            }
          }
        },
        "Return": {
          "Type": "string",
          "Name": "FilecoinNumber"
        }
      },
      "17": {
        "Name": "ConfirmSectorProofsValid",
        "Param": {
          "Type": "object",
          "Name": "ConfirmSectorProofsParams",
          "Children": {
            "Sectors": {
              "Type": "array",
              "Name": "",
              "Contains": {
                "Type": "number",
                "Name": "SectorNumber"
              }
            },
            "RewardSmoothed": {
              "Type": "object",
              "Name": "FilterEstimate",
              "Children": {
                "PositionEstimate": {
                  "Type": "string",
                  "Name": "FilecoinNumber"
                },
                "VelocityEstimate": {
                  "Type": "string",
                  "Name": "FilecoinNumber"
                }
              }
            },
            "RewardBaselinePower": {
              "Type": "string",
              "Name": "FilecoinNumber"
            },
            "QualityAdjPowerSmoothed": {
              "Type": "object",
              "Name": "FilterEstimate",
              "Children": {
                "PositionEstimate": {
                  "Type": "string",
                  "Name": "FilecoinNumber"
                },
                "VelocityEstimate": {
                  "Type": "string",
                  "Name": "FilecoinNumber"
                }
              }
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "18": {
        "Name": "ChangeMultiaddrs",
        "Param": {
          "Type": "object",
          "Name": "ChangeMultiaddrsParams",
          "Children": {
            "NewMultiaddrs": {
              "Type": "array",
              "Name": "",
              "Contains": {
                "Type": "bytes",
                "Name": ""
              }
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "19": {
        "Name": "CompactPartitions",
        "Param": {
          "Type": "object",
          "Name": "CompactPartitionsParams",
          "Children": {
            "Deadline": {
              "Type": "number",
              "Name": "uint64"
            },
            "Partitions": {
              "Type": "array",
              "Name": "BitField",
              "Contains": {
                "Type": "number",
                "Name": "Bit"
              }
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "2": {
        "Name": "ControlAddresses",
        "Param": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        },
        "Return": {
          "Type": "object",
          "Name": "GetControlAddressesReturn",
          "Children": {
            "Owner": {
              "Type": "string",
              "Name": "Address"
            },
            "Worker": {
              "Type": "string",
              "Name": "Address"
            },
            "ControlAddrs": {
              "Type": "array",
              "Name": "",
              "Contains": {
                "Type": "string",
                "Name": "Address"
              }
            }
          }
        }
      },
      "20": {
        "Name": "CompactSectorNumbers",
        "Param": {
          "Type": "object",
          "Name": "CompactSectorNumbersParams",
          "Children": {
            "MaskSectorNumbers": {
              "Type": "array",
              "Name": "BitField",
              "Contains": {
                "Type": "number",
                "Name": "Bit"
              }
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "21": {
        "Name": "ConfirmUpdateWorkerKey",
        "Param": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "22": {
        "Name": "RepayDebt",
        "Param": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "23": {
        "Name": "ChangeOwnerAddress",
        "Param": {
          "Type": "string",
          "Name": "Address"
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "24": {
        "Name": "DisputeWindowedPoSt",
        "Param": {
          "Type": "object",
          "Name": "DisputeWindowedPoStParams",
          "Children": {
            "Deadline": {
              "Type": "number",
              "Name": "uint64"
            },
            "PoStIndex": {
              "Type": "number",
              "Name": "uint64"
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "25": {
        "Name": "PreCommitSectorBatch",
        "Param": {
          "Type": "object",
          "Name": "PreCommitSectorBatchParams",
          "Children": {
            "Sectors": {
              "Type": "array",
              "Name": "",
              "Contains": {
                "Type": "object",
                "Name": "SectorPreCommitInfo",
                "Children": {
                  "SealProof": {
                    "Type": "number",
                    "Name": "RegisteredSealProof"
                  },
                  "SectorNumber": {
                    "Type": "number",
                    "Name": "SectorNumber"
                  },
                  "SealedCID": {
                    "Type": "object",
                    "Name": "Cid",
                    "Children": {
                      "/": {
                        "Type": "string",
                        "Name": "CidString"
                      }
                    }
                  },
                  "SealRandEpoch": {
                    "Type": "number",
                    "Name": "ChainEpoch"
                  },
                  "DealIDs": {
                    "Type": "array",
                    "Name": "",
                    "Contains": {
                      "Type": "number",
                      "Name": "DealID"
                    }
                  },
                  "Expiration": {
                    "Type": "number",
                    "Name": "ChainEpoch"
                  },
                  "ReplaceCapacity": {
                    "Type": "boolean",
                    "Name": "bool"
                  },
                  "ReplaceSectorDeadline": {
                    "Type": "number",
                    "Name": "uint64"
                  },
                  "ReplaceSectorPartition": {
                    "Type": "number",
                    "Name": "uint64"
                  },
                  "ReplaceSectorNumber": {
                    "Type": "number",
                    "Name": "SectorNumber"
                  }
                }
              }
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "26": {
        "Name": "ProveCommitAggregate",
        "Param": {
          "Type": "object",
          "Name": "ProveCommitAggregateParams",
          "Children": {
            "SectorNumbers": {
              "Type": "array",
              "Name": "BitField",
              "Contains": {
                "Type": "number",
                "Name": "Bit"
              }
            },
            "AggregateProof": {
              "Type": "bytes",
              "Name": ""
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "27": {
        "Name": "ProveReplicaUpdates",
        "Param": {
          "Type": "object",
          "Name": "ProveReplicaUpdatesParams",
          "Children": {
            "Updates": {
              "Type": "array",
              "Name": "",
              "Contains": {
                "Type": "object",
                "Name": "ReplicaUpdate",
                "Children": {
                  "SectorID": {
                    "Type": "number",
                    "Name": "SectorNumber"
                  },
                  "Deadline": {
                    "Type": "number",
                    "Name": "uint64"
                  },
                  "Partition": {
                    "Type": "number",
                    "Name": "uint64"
                  },
                  "NewSealedSectorCID": {
                    "Type": "object",
                    "Name": "Cid",
                    "Children": {
                      "/": {
                        "Type": "string",
                        "Name": "CidString"
                      }
                    }
                  },
                  "Deals": {
                    "Type": "array",
                    "Name": "",
                    "Contains": {
                      "Type": "number",
                      "Name": "DealID"
                    }
                  },
                  "UpdateProofType": {
                    "Type": "number",
                    "Name": "RegisteredUpdateProof"
                  },
                  "ReplicaProof": {
                    "Type": "bytes",
                    "Name": ""
                  }
                }
              }
            }
          }
        },
        "Return": {
          "Type": "array",
          "Name": "BitField",
          "Contains": {
            "Type": "number",
            "Name": "Bit"
          }
        }
      },
      "3": {
        "Name": "ChangeWorkerAddress",
        "Param": {
          "Type": "object",
          "Name": "ChangeWorkerAddressParams",
          "Children": {
            "NewWorker": {
              "Type": "string",
              "Name": "Address"
            },
            "NewControlAddrs": {
              "Type": "array",
              "Name": "",
              "Contains": {
                "Type": "string",
                "Name": "Address"
              }
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "4": {
        "Name": "ChangePeerID",
        "Param": {
          "Type": "object",
          "Name": "ChangePeerIDParams",
          "Children": {
            "NewID": {
              "Type": "bytes",
              "Name": ""
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "5": {
        "Name": "SubmitWindowedPoSt",
        "Param": {
          "Type": "object",
          "Name": "SubmitWindowedPoStParams",
          "Children": {
            "Deadline": {
              "Type": "number",
              "Name": "uint64"
            },
            "Partitions": {
              "Type": "array",
              "Name": "",
              "Contains": {
                "Type": "object",
                "Name": "PoStPartition",
                "Children": {
                  "Index": {
                    "Type": "number",
                    "Name": "uint64"
                  },
                  "Skipped": {
                    "Type": "array",
                    "Name": "BitField",
                    "Contains": {
                      "Type": "number",
                      "Name": "Bit"
                    }
                  }
                }
              }
            },
            "Proofs": {
              "Type": "array",
              "Name": "",
              "Contains": {
                "Type": "object",
                "Name": "PoStProof",
                "Children": {
                  "PoStProof": {
                    "Type": "number",
                    "Name": "RegisteredPoStProof"
                  },
                  "ProofBytes": {
                    "Type": "bytes",
                    "Name": ""
                  }
                }
              }
            },
            "ChainCommitEpoch": {
              "Type": "number",
              "Name": "ChainEpoch"
            },
            "ChainCommitRand": {
              "Type": "bytes",
              "Name": "Randomness"
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "6": {
        "Name": "PreCommitSector",
        "Param": {
          "Type": "object",
          "Name": "SectorPreCommitInfo",
          "Children": {
            "SealProof": {
              "Type": "number",
              "Name": "RegisteredSealProof"
            },
            "SectorNumber": {
              "Type": "number",
              "Name": "SectorNumber"
            },
            "SealedCID": {
              "Type": "object",
              "Name": "Cid",
              "Children": {
                "/": {
                  "Type": "string",
                  "Name": "CidString"
                }
              }
            },
            "SealRandEpoch": {
              "Type": "number",
              "Name": "ChainEpoch"
            },
            "DealIDs": {
              "Type": "array",
              "Name": "",
              "Contains": {
                "Type": "number",
                "Name": "DealID"
              }
            },
            "Expiration": {
              "Type": "number",
              "Name": "ChainEpoch"
            },
            "ReplaceCapacity": {
              "Type": "boolean",
              "Name": "bool"
            },
            "ReplaceSectorDeadline": {
              "Type": "number",
              "Name": "uint64"
            },
            "ReplaceSectorPartition": {
              "Type": "number",
              "Name": "uint64"
            },
            "ReplaceSectorNumber": {
              "Type": "number",
              "Name": "SectorNumber"
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "7": {
        "Name": "ProveCommitSector",
        "Param": {
          "Type": "object",
          "Name": "ProveCommitSectorParams",
          "Children": {
            "SectorNumber": {
              "Type": "number",
              "Name": "SectorNumber"
            },
            "Proof": {
              "Type": "bytes",
              "Name": ""
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "8": {
        "Name": "ExtendSectorExpiration",
        "Param": {
          "Type": "object",
          "Name": "ExtendSectorExpirationParams",
          "Children": {
            "Extensions": {
              "Type": "array",
              "Name": "",
              "Contains": {
                "Type": "object",
                "Name": "ExpirationExtension",
                "Children": {
                  "Deadline": {
                    "Type": "number",
                    "Name": "uint64"
                  },
                  "Partition": {
                    "Type": "number",
                    "Name": "uint64"
                  },
                  "Sectors": {
                    "Type": "array",
                    "Name": "BitField",
                    "Contains": {
                      "Type": "number",
                      "Name": "Bit"
                    }
                  },
                  "NewExpiration": {
                    "Type": "number",
                    "Name": "ChainEpoch"
                  }
                }
              }
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "9": {
        "Name": "TerminateSectors",
        "Param": {
          "Type": "object",
          "Name": "TerminateSectorsParams",
          "Children": {
            "Terminations": {
              "Type": "array",
              "Name": "",
              "Contains": {
                "Type": "object",
                "Name": "TerminationDeclaration",
                "Children": {
                  "Deadline": {
                    "Type": "number",
                    "Name": "uint64"
                  },
                  "Partition": {
                    "Type": "number",
                    "Name": "uint64"
                  },
                  "Sectors": {
                    "Type": "array",
                    "Name": "BitField",
                    "Contains": {
                      "Type": "number",
                      "Name": "Bit"
                    }
                  }
                }
              }
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "TerminateSectorsReturn",
          "Children": {
            "Done": {
              "Type": "boolean",
              "Name": "bool"
            }
          }
        }
      }
    }
  },
  "storagepower": {
    "State": {
      "TotalRawBytePower": {
        "Type": "string",
        "Name": "FilecoinNumber"
      },
      "TotalBytesCommitted": {
        "Type": "string",
        "Name": "FilecoinNumber"
      },
      "TotalQualityAdjPower": {
        "Type": "string",
        "Name": "FilecoinNumber"
      },
      "TotalQABytesCommitted": {
        "Type": "string",
        "Name": "FilecoinNumber"
      },
      "TotalPledgeCollateral": {
        "Type": "string",
        "Name": "FilecoinNumber"
      },
      "ThisEpochRawBytePower": {
        "Type": "string",
        "Name": "FilecoinNumber"
      },
      "ThisEpochQualityAdjPower": {
        "Type": "string",
        "Name": "FilecoinNumber"
      },
      "ThisEpochPledgeCollateral": {
        "Type": "string",
        "Name": "FilecoinNumber"
      },
      "ThisEpochQAPowerSmoothed": {
        "Type": "object",
        "Name": "FilterEstimate",
        "Children": {
          "PositionEstimate": {
            "Type": "string",
            "Name": "FilecoinNumber"
          },
          "VelocityEstimate": {
            "Type": "string",
            "Name": "FilecoinNumber"
          }
        }
      },
      "MinerCount": {
        "Type": "number",
        "Name": "int64"
      },
      "MinerAboveMinPowerCount": {
        "Type": "number",
        "Name": "int64"
      },
      "CronEventQueue": {
        "Type": "object",
        "Name": "Cid",
        "Children": {
          "/": {
            "Type": "string",
            "Name": "CidString"
          }
        }
      },
      "FirstCronEpoch": {
        "Type": "number",
        "Name": "ChainEpoch"
      },
      "Claims": {
        "Type": "object",
        "Name": "Cid",
        "Children": {
          "/": {
            "Type": "string",
            "Name": "CidString"
          }
        }
      },
      "ProofValidationBatch": {
        "Type": "object",
        "Name": "Cid",
        "Children": {
          "/": {
            "Type": "string",
            "Name": "CidString"
          }
        }
      }
    },
    "Methods": {
      "0": {
        "Name": "Send",
        "Param": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "1": {
        "Name": "Constructor",
        "Param": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "2": {
        "Name": "CreateMiner",
        "Param": {
          "Type": "object",
          "Name": "CreateMinerParams",
          "Children": {
            "Owner": {
              "Type": "string",
              "Name": "Address"
            },
            "Worker": {
              "Type": "string",
              "Name": "Address"
            },
            "WindowPoStProofType": {
              "Type": "number",
              "Name": "RegisteredPoStProof"
            },
            "Peer": {
              "Type": "bytes",
              "Name": ""
            },
            "Multiaddrs": {
              "Type": "array",
              "Name": "",
              "Contains": {
                "Type": "bytes",
                "Name": ""
              }
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "CreateMinerReturn",
          "Children": {
            "IDAddress": {
              "Type": "string",
              "Name": "Address"
            },
            "RobustAddress": {
              "Type": "string",
              "Name": "Address"
            }
          }
        }
      },
      "3": {
        "Name": "UpdateClaimedPower",
        "Param": {
          "Type": "object",
          "Name": "UpdateClaimedPowerParams",
          "Children": {
            "RawByteDelta": {
              "Type": "string",
              "Name": "FilecoinNumber"
            },
            "QualityAdjustedDelta": {
              "Type": "string",
              "Name": "FilecoinNumber"
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "4": {
        "Name": "EnrollCronEvent",
        "Param": {
          "Type": "object",
          "Name": "EnrollCronEventParams",
          "Children": {
            "EventEpoch": {
              "Type": "number",
              "Name": "ChainEpoch"
            },
            "Payload": {
              "Type": "bytes",
              "Name": ""
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "5": {
        "Name": "CronTick",
        "Param": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "6": {
        "Name": "UpdatePledgeTotal",
        "Param": {
          "Type": "string",
          "Name": "FilecoinNumber"
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "8": {
        "Name": "SubmitPoRepForBulkVerify",
        "Param": {
          "Type": "object",
          "Name": "SealVerifyInfo",
          "Children": {
            "SealProof": {
              "Type": "number",
              "Name": "RegisteredSealProof"
            },
            "SectorID": {
              "Type": "object",
              "Name": "SectorID",
              "Children": {
                "Miner": {
                  "Type": "number",
                  "Name": "ActorID"
                },
                "Number": {
                  "Type": "number",
                  "Name": "SectorNumber"
                }
              }
            },
            "DealIDs": {
              "Type": "array",
              "Name": "",
              "Contains": {
                "Type": "number",
                "Name": "DealID"
              }
            },
            "Randomness": {
              "Type": "bytes",
              "Name": "SealRandomness"
            },
            "InteractiveRandomness": {
              "Type": "bytes",
              "Name": "InteractiveSealRandomness"
            },
            "Proof": {
              "Type": "bytes",
              "Name": ""
            },
            "SealedCID": {
              "Type": "object",
              "Name": "Cid",
              "Children": {
                "/": {
                  "Type": "string",
                  "Name": "CidString"
                }
              }
            },
            "UnsealedCID": {
              "Type": "object",
              "Name": "Cid",
              "Children": {
                "/": {
                  "Type": "string",
                  "Name": "CidString"
                }
              }
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "9": {
        "Name": "CurrentTotalPower",
        "Param": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        },
        "Return": {
          "Type": "object",
          "Name": "CurrentTotalPowerReturn",
          "Children": {
            "RawBytePower": {
              "Type": "string",
              "Name": "FilecoinNumber"
            },
            "QualityAdjPower": {
              "Type": "string",
              "Name": "FilecoinNumber"
            },
            "PledgeCollateral": {
              "Type": "string",
              "Name": "FilecoinNumber"
            },
            "QualityAdjPowerSmoothed": {
              "Type": "object",
              "Name": "FilterEstimate",
              "Children": {
                "PositionEstimate": {
                  "Type": "string",
                  "Name": "FilecoinNumber"
                },
                "VelocityEstimate": {
                  "Type": "string",
                  "Name": "FilecoinNumber"
                }
              }
            }
          }
        }
      }
    }
  },
  "system": {
    "State": {
      "BuiltinActors": {
        "Type": "object",
        "Name": "Cid",
        "Children": {
          "/": {
            "Type": "string",
            "Name": "CidString"
          }
        }
      }
    },
    "Methods": {}
  },
  "verifiedregistry": {
    "State": {
      "RootKey": {
        "Type": "string",
        "Name": "Address"
      },
      "Verifiers": {
        "Type": "object",
        "Name": "Cid",
        "Children": {
          "/": {
            "Type": "string",
            "Name": "CidString"
          }
        }
      },
      "RemoveDataCapProposalIDs": {
        "Type": "object",
        "Name": "Cid",
        "Children": {
          "/": {
            "Type": "string",
            "Name": "CidString"
          }
        }
      },
      "Allocations": {
        "Type": "object",
        "Name": "Cid",
        "Children": {
          "/": {
            "Type": "string",
            "Name": "CidString"
          }
        }
      },
      "NextAllocationId": {
        "Type": "number",
        "Name": "AllocationId"
      },
      "Claims": {
        "Type": "object",
        "Name": "Cid",
        "Children": {
          "/": {
            "Type": "string",
            "Name": "CidString"
          }
        }
      }
    },
    "Methods": {
      "0": {
        "Name": "Send",
        "Param": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "1": {
        "Name": "Constructor",
        "Param": {
          "Type": "string",
          "Name": "Address"
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "2": {
        "Name": "AddVerifier",
        "Param": {
          "Type": "object",
          "Name": "AddVerifierParams",
          "Children": {
            "Address": {
              "Type": "string",
              "Name": "Address"
            },
            "Allowance": {
              "Type": "string",
              "Name": "FilecoinNumber"
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "3": {
        "Name": "RemoveVerifier",
        "Param": {
          "Type": "string",
          "Name": "Address"
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "4": {
        "Name": "AddVerifiedClient",
        "Param": {
          "Type": "object",
          "Name": "AddVerifiedClientParams",
          "Children": {
            "Address": {
              "Type": "string",
              "Name": "Address"
            },
            "Allowance": {
              "Type": "string",
              "Name": "FilecoinNumber"
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "5": {
        "Name": "UseBytes",
        "Param": {
          "Type": "object",
          "Name": "UseBytesParams",
          "Children": {
            "Address": {
              "Type": "string",
              "Name": "Address"
            },
            "DealSize": {
              "Type": "string",
              "Name": "FilecoinNumber"
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "6": {
        "Name": "RestoreBytes",
        "Param": {
          "Type": "object",
          "Name": "RestoreBytesParams",
          "Children": {
            "Address": {
              "Type": "string",
              "Name": "Address"
            },
            "DealSize": {
              "Type": "string",
              "Name": "FilecoinNumber"
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "EmptyValue",
          "Children": {}
        }
      },
      "7": {
        "Name": "RemoveVerifiedClientDataCap",
        "Param": {
          "Type": "object",
          "Name": "RemoveDataCapParams",
          "Children": {
            "VerifiedClientToRemove": {
              "Type": "string",
              "Name": "Address"
            },
            "DataCapAmountToRemove": {
              "Type": "string",
              "Name": "FilecoinNumber"
            },
            "VerifierRequest1": {
              "Type": "object",
              "Name": "RemoveDataCapRequest",
              "Children": {
                "Verifier": {
                  "Type": "string",
                  "Name": "Address"
                },
                "VerifierSignature": {
                  "Type": "object",
                  "Name": "Signature",
                  "Children": {
                    "Type": {
                      "Type": "number",
                      "Name": "SigType"
                    },
                    "Data": {
                      "Type": "bytes",
                      "Name": ""
                    }
                  }
                }
              }
            },
            "VerifierRequest2": {
              "Type": "object",
              "Name": "RemoveDataCapRequest",
              "Children": {
                "Verifier": {
                  "Type": "string",
                  "Name": "Address"
                },
                "VerifierSignature": {
                  "Type": "object",
                  "Name": "Signature",
                  "Children": {
                    "Type": {
                      "Type": "number",
                      "Name": "SigType"
                    },
                    "Data": {
                      "Type": "bytes",
                      "Name": ""
                    }
                  }
                }
              }
            }
          }
        },
        "Return": {
          "Type": "object",
          "Name": "RemoveDataCapReturn",
          "Children": {
            "VerifiedClient": {
              "Type": "string",
              "Name": "Address"
            },
            "DataCapRemoved": {
              "Type": "string",
              "Name": "FilecoinNumber"
            }
          }
        }
      }
    }
  }
}