@astonic-io/astonic-bindings-ts
Version:
Astonic type generation and npm package deployment repo
1,473 lines • 74.5 kB
JavaScript
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
if (typeof b !== "function" && b !== null)
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
Object.defineProperty(exports, "__esModule", { value: true });
exports.AstonicGovernor__factory = void 0;
/* Autogenerated file. Do not edit manually. */
/* tslint:disable */
/* eslint-disable */
var ethers_1 = require("ethers");
var _abi = [
{
type: "receive",
stateMutability: "payable",
},
{
type: "function",
name: "BALLOT_TYPEHASH",
inputs: [],
outputs: [
{
name: "",
type: "bytes32",
internalType: "bytes32",
},
],
stateMutability: "view",
},
{
type: "function",
name: "COUNTING_MODE",
inputs: [],
outputs: [
{
name: "",
type: "string",
internalType: "string",
},
],
stateMutability: "pure",
},
{
type: "function",
name: "EXTENDED_BALLOT_TYPEHASH",
inputs: [],
outputs: [
{
name: "",
type: "bytes32",
internalType: "bytes32",
},
],
stateMutability: "view",
},
{
type: "function",
name: "__AstonicGovernor_init",
inputs: [
{
name: "veToken",
type: "address",
internalType: "contract IVotesUpgradeable",
},
{
name: "timelockController",
type: "address",
internalType: "contract TimelockControllerUpgradeable",
},
{
name: "votingDelay_",
type: "uint256",
internalType: "uint256",
},
{
name: "votingPeriod_",
type: "uint256",
internalType: "uint256",
},
{
name: "threshold_",
type: "uint256",
internalType: "uint256",
},
{
name: "quorum_",
type: "uint256",
internalType: "uint256",
},
],
outputs: [],
stateMutability: "nonpayable",
},
{
type: "function",
name: "cancel",
inputs: [
{
name: "proposalId",
type: "uint256",
internalType: "uint256",
},
],
outputs: [],
stateMutability: "nonpayable",
},
{
type: "function",
name: "castVote",
inputs: [
{
name: "proposalId",
type: "uint256",
internalType: "uint256",
},
{
name: "support",
type: "uint8",
internalType: "uint8",
},
],
outputs: [
{
name: "",
type: "uint256",
internalType: "uint256",
},
],
stateMutability: "nonpayable",
},
{
type: "function",
name: "castVoteBySig",
inputs: [
{
name: "proposalId",
type: "uint256",
internalType: "uint256",
},
{
name: "support",
type: "uint8",
internalType: "uint8",
},
{
name: "v",
type: "uint8",
internalType: "uint8",
},
{
name: "r",
type: "bytes32",
internalType: "bytes32",
},
{
name: "s",
type: "bytes32",
internalType: "bytes32",
},
],
outputs: [
{
name: "",
type: "uint256",
internalType: "uint256",
},
],
stateMutability: "nonpayable",
},
{
type: "function",
name: "castVoteWithReason",
inputs: [
{
name: "proposalId",
type: "uint256",
internalType: "uint256",
},
{
name: "support",
type: "uint8",
internalType: "uint8",
},
{
name: "reason",
type: "string",
internalType: "string",
},
],
outputs: [
{
name: "",
type: "uint256",
internalType: "uint256",
},
],
stateMutability: "nonpayable",
},
{
type: "function",
name: "castVoteWithReasonAndParams",
inputs: [
{
name: "proposalId",
type: "uint256",
internalType: "uint256",
},
{
name: "support",
type: "uint8",
internalType: "uint8",
},
{
name: "reason",
type: "string",
internalType: "string",
},
{
name: "params",
type: "bytes",
internalType: "bytes",
},
],
outputs: [
{
name: "",
type: "uint256",
internalType: "uint256",
},
],
stateMutability: "nonpayable",
},
{
type: "function",
name: "castVoteWithReasonAndParamsBySig",
inputs: [
{
name: "proposalId",
type: "uint256",
internalType: "uint256",
},
{
name: "support",
type: "uint8",
internalType: "uint8",
},
{
name: "reason",
type: "string",
internalType: "string",
},
{
name: "params",
type: "bytes",
internalType: "bytes",
},
{
name: "v",
type: "uint8",
internalType: "uint8",
},
{
name: "r",
type: "bytes32",
internalType: "bytes32",
},
{
name: "s",
type: "bytes32",
internalType: "bytes32",
},
],
outputs: [
{
name: "",
type: "uint256",
internalType: "uint256",
},
],
stateMutability: "nonpayable",
},
{
type: "function",
name: "execute",
inputs: [
{
name: "targets",
type: "address[]",
internalType: "address[]",
},
{
name: "values",
type: "uint256[]",
internalType: "uint256[]",
},
{
name: "calldatas",
type: "bytes[]",
internalType: "bytes[]",
},
{
name: "descriptionHash",
type: "bytes32",
internalType: "bytes32",
},
],
outputs: [
{
name: "",
type: "uint256",
internalType: "uint256",
},
],
stateMutability: "payable",
},
{
type: "function",
name: "execute",
inputs: [
{
name: "proposalId",
type: "uint256",
internalType: "uint256",
},
],
outputs: [],
stateMutability: "payable",
},
{
type: "function",
name: "getActions",
inputs: [
{
name: "proposalId",
type: "uint256",
internalType: "uint256",
},
],
outputs: [
{
name: "targets",
type: "address[]",
internalType: "address[]",
},
{
name: "values",
type: "uint256[]",
internalType: "uint256[]",
},
{
name: "signatures",
type: "string[]",
internalType: "string[]",
},
{
name: "calldatas",
type: "bytes[]",
internalType: "bytes[]",
},
],
stateMutability: "view",
},
{
type: "function",
name: "getReceipt",
inputs: [
{
name: "proposalId",
type: "uint256",
internalType: "uint256",
},
{
name: "voter",
type: "address",
internalType: "address",
},
],
outputs: [
{
name: "",
type: "tuple",
internalType: "struct IGovernorCompatibilityBravoUpgradeable.Receipt",
components: [
{
name: "hasVoted",
type: "bool",
internalType: "bool",
},
{
name: "support",
type: "uint8",
internalType: "uint8",
},
{
name: "votes",
type: "uint96",
internalType: "uint96",
},
],
},
],
stateMutability: "view",
},
{
type: "function",
name: "getVotes",
inputs: [
{
name: "account",
type: "address",
internalType: "address",
},
{
name: "blockNumber",
type: "uint256",
internalType: "uint256",
},
],
outputs: [
{
name: "",
type: "uint256",
internalType: "uint256",
},
],
stateMutability: "view",
},
{
type: "function",
name: "getVotesWithParams",
inputs: [
{
name: "account",
type: "address",
internalType: "address",
},
{
name: "blockNumber",
type: "uint256",
internalType: "uint256",
},
{
name: "params",
type: "bytes",
internalType: "bytes",
},
],
outputs: [
{
name: "",
type: "uint256",
internalType: "uint256",
},
],
stateMutability: "view",
},
{
type: "function",
name: "hasVoted",
inputs: [
{
name: "proposalId",
type: "uint256",
internalType: "uint256",
},
{
name: "account",
type: "address",
internalType: "address",
},
],
outputs: [
{
name: "",
type: "bool",
internalType: "bool",
},
],
stateMutability: "view",
},
{
type: "function",
name: "hashProposal",
inputs: [
{
name: "targets",
type: "address[]",
internalType: "address[]",
},
{
name: "values",
type: "uint256[]",
internalType: "uint256[]",
},
{
name: "calldatas",
type: "bytes[]",
internalType: "bytes[]",
},
{
name: "descriptionHash",
type: "bytes32",
internalType: "bytes32",
},
],
outputs: [
{
name: "",
type: "uint256",
internalType: "uint256",
},
],
stateMutability: "pure",
},
{
type: "function",
name: "name",
inputs: [],
outputs: [
{
name: "",
type: "string",
internalType: "string",
},
],
stateMutability: "view",
},
{
type: "function",
name: "onERC1155BatchReceived",
inputs: [
{
name: "",
type: "address",
internalType: "address",
},
{
name: "",
type: "address",
internalType: "address",
},
{
name: "",
type: "uint256[]",
internalType: "uint256[]",
},
{
name: "",
type: "uint256[]",
internalType: "uint256[]",
},
{
name: "",
type: "bytes",
internalType: "bytes",
},
],
outputs: [
{
name: "",
type: "bytes4",
internalType: "bytes4",
},
],
stateMutability: "nonpayable",
},
{
type: "function",
name: "onERC1155Received",
inputs: [
{
name: "",
type: "address",
internalType: "address",
},
{
name: "",
type: "address",
internalType: "address",
},
{
name: "",
type: "uint256",
internalType: "uint256",
},
{
name: "",
type: "uint256",
internalType: "uint256",
},
{
name: "",
type: "bytes",
internalType: "bytes",
},
],
outputs: [
{
name: "",
type: "bytes4",
internalType: "bytes4",
},
],
stateMutability: "nonpayable",
},
{
type: "function",
name: "onERC721Received",
inputs: [
{
name: "",
type: "address",
internalType: "address",
},
{
name: "",
type: "address",
internalType: "address",
},
{
name: "",
type: "uint256",
internalType: "uint256",
},
{
name: "",
type: "bytes",
internalType: "bytes",
},
],
outputs: [
{
name: "",
type: "bytes4",
internalType: "bytes4",
},
],
stateMutability: "nonpayable",
},
{
type: "function",
name: "proposalDeadline",
inputs: [
{
name: "proposalId",
type: "uint256",
internalType: "uint256",
},
],
outputs: [
{
name: "",
type: "uint256",
internalType: "uint256",
},
],
stateMutability: "view",
},
{
type: "function",
name: "proposalEta",
inputs: [
{
name: "proposalId",
type: "uint256",
internalType: "uint256",
},
],
outputs: [
{
name: "",
type: "uint256",
internalType: "uint256",
},
],
stateMutability: "view",
},
{
type: "function",
name: "proposalSnapshot",
inputs: [
{
name: "proposalId",
type: "uint256",
internalType: "uint256",
},
],
outputs: [
{
name: "",
type: "uint256",
internalType: "uint256",
},
],
stateMutability: "view",
},
{
type: "function",
name: "proposalThreshold",
inputs: [],
outputs: [
{
name: "",
type: "uint256",
internalType: "uint256",
},
],
stateMutability: "view",
},
{
type: "function",
name: "proposals",
inputs: [
{
name: "proposalId",
type: "uint256",
internalType: "uint256",
},
],
outputs: [
{
name: "id",
type: "uint256",
internalType: "uint256",
},
{
name: "proposer",
type: "address",
internalType: "address",
},
{
name: "eta",
type: "uint256",
internalType: "uint256",
},
{
name: "startBlock",
type: "uint256",
internalType: "uint256",
},
{
name: "endBlock",
type: "uint256",
internalType: "uint256",
},
{
name: "forVotes",
type: "uint256",
internalType: "uint256",
},
{
name: "againstVotes",
type: "uint256",
internalType: "uint256",
},
{
name: "abstainVotes",
type: "uint256",
internalType: "uint256",
},
{
name: "canceled",
type: "bool",
internalType: "bool",
},
{
name: "executed",
type: "bool",
internalType: "bool",
},
],
stateMutability: "view",
},
{
type: "function",
name: "propose",
inputs: [
{
name: "targets",
type: "address[]",
internalType: "address[]",
},
{
name: "values",
type: "uint256[]",
internalType: "uint256[]",
},
{
name: "calldatas",
type: "bytes[]",
internalType: "bytes[]",
},
{
name: "description",
type: "string",
internalType: "string",
},
],
outputs: [
{
name: "",
type: "uint256",
internalType: "uint256",
},
],
stateMutability: "nonpayable",
},
{
type: "function",
name: "propose",
inputs: [
{
name: "targets",
type: "address[]",
internalType: "address[]",
},
{
name: "values",
type: "uint256[]",
internalType: "uint256[]",
},
{
name: "signatures",
type: "string[]",
internalType: "string[]",
},
{
name: "calldatas",
type: "bytes[]",
internalType: "bytes[]",
},
{
name: "description",
type: "string",
internalType: "string",
},
],
outputs: [
{
name: "",
type: "uint256",
internalType: "uint256",
},
],
stateMutability: "nonpayable",
},
{
type: "function",
name: "queue",
inputs: [
{
name: "targets",
type: "address[]",
internalType: "address[]",
},
{
name: "values",
type: "uint256[]",
internalType: "uint256[]",
},
{
name: "calldatas",
type: "bytes[]",
internalType: "bytes[]",
},
{
name: "descriptionHash",
type: "bytes32",
internalType: "bytes32",
},
],
outputs: [
{
name: "",
type: "uint256",
internalType: "uint256",
},
],
stateMutability: "nonpayable",
},
{
type: "function",
name: "queue",
inputs: [
{
name: "proposalId",
type: "uint256",
internalType: "uint256",
},
],
outputs: [],
stateMutability: "nonpayable",
},
{
type: "function",
name: "quorum",
inputs: [
{
name: "blockNumber",
type: "uint256",
internalType: "uint256",
},
],
outputs: [
{
name: "",
type: "uint256",
internalType: "uint256",
},
],
stateMutability: "view",
},
{
type: "function",
name: "quorumDenominator",
inputs: [],
outputs: [
{
name: "",
type: "uint256",
internalType: "uint256",
},
],
stateMutability: "view",
},
{
type: "function",
name: "quorumNumerator",
inputs: [
{
name: "blockNumber",
type: "uint256",
internalType: "uint256",
},
],
outputs: [
{
name: "",
type: "uint256",
internalType: "uint256",
},
],
stateMutability: "view",
},
{
type: "function",
name: "quorumNumerator",
inputs: [],
outputs: [
{
name: "",
type: "uint256",
internalType: "uint256",
},
],
stateMutability: "view",
},
{
type: "function",
name: "quorumVotes",
inputs: [],
outputs: [
{
name: "",
type: "uint256",
internalType: "uint256",
},
],
stateMutability: "view",
},
{
type: "function",
name: "relay",
inputs: [
{
name: "target",
type: "address",
internalType: "address",
},
{
name: "value",
type: "uint256",
internalType: "uint256",
},
{
name: "data",
type: "bytes",
internalType: "bytes",
},
],
outputs: [],
stateMutability: "payable",
},
{
type: "function",
name: "setProposalThreshold",
inputs: [
{
name: "newProposalThreshold",
type: "uint256",
internalType: "uint256",
},
],
outputs: [],
stateMutability: "nonpayable",
},
{
type: "function",
name: "setVotingDelay",
inputs: [
{
name: "newVotingDelay",
type: "uint256",
internalType: "uint256",
},
],
outputs: [],
stateMutability: "nonpayable",
},
{
type: "function",
name: "setVotingPeriod",
inputs: [
{
name: "newVotingPeriod",
type: "uint256",
internalType: "uint256",
},
],
outputs: [],
stateMutability: "nonpayable",
},
{
type: "function",
name: "state",
inputs: [
{
name: "proposalId",
type: "uint256",
internalType: "uint256",
},
],
outputs: [
{
name: "",
type: "uint8",
internalType: "enum IGovernorUpgradeable.ProposalState",
},
],
stateMutability: "view",
},
{
type: "function",
name: "supportsInterface",
inputs: [
{
name: "interfaceId",
type: "bytes4",
internalType: "bytes4",
},
],
outputs: [
{
name: "",
type: "bool",
internalType: "bool",
},
],
stateMutability: "view",
},
{
type: "function",
name: "timelock",
inputs: [],
outputs: [
{
name: "",
type: "address",
internalType: "address",
},
],
stateMutability: "view",
},
{
type: "function",
name: "token",
inputs: [],
outputs: [
{
name: "",
type: "address",
internalType: "contract IVotesUpgradeable",
},
],
stateMutability: "view",
},
{
type: "function",
name: "updateQuorumNumerator",
inputs: [
{
name: "newQuorumNumerator",
type: "uint256",
internalType: "uint256",
},
],
outputs: [],
stateMutability: "nonpayable",
},
{
type: "function",
name: "updateTimelock",
inputs: [
{
name: "newTimelock",
type: "address",
internalType: "contract TimelockControllerUpgradeable",
},
],
outputs: [],
stateMutability: "nonpayable",
},
{
type: "function",
name: "version",
inputs: [],
outputs: [
{
name: "",
type: "string",
internalType: "string",
},
],
stateMutability: "view",
},
{
type: "function",
name: "votingDelay",
inputs: [],
outputs: [
{
name: "",
type: "uint256",
internalType: "uint256",
},
],
stateMutability: "view",
},
{
type: "function",
name: "votingPeriod",
inputs: [],
outputs: [
{
name: "",
type: "uint256",
internalType: "uint256",
},
],
stateMutability: "view",
},
{
type: "event",
name: "Initialized",
inputs: [
{
name: "version",
type: "uint8",
indexed: false,
internalType: "uint8",
},
],
anonymous: false,
},
{
type: "event",
name: "ProposalCanceled",
inputs: [
{
name: "proposalId",
type: "uint256",
indexed: false,
internalType: "uint256",
},
],
anonymous: false,
},
{
type: "event",
name: "ProposalCreated",
inputs: [
{
name: "proposalId",
type: "uint256",
indexed: false,
internalType: "uint256",
},
{
name: "proposer",
type: "address",
indexed: false,
internalType: "address",
},
{
name: "targets",
type: "address[]",
indexed: false,
internalType: "address[]",
},
{
name: "values",
type: "uint256[]",
indexed: false,
internalType: "uint256[]",
},
{
name: "signatures",
type: "string[]",
indexed: false,
internalType: "string[]",
},
{
name: "calldatas",
type: "bytes[]",
indexed: false,
internalType: "bytes[]",
},
{
name: "startBlock",
type: "uint256",
indexed: false,
internalType: "uint256",
},
{
name: "endBlock",
type: "uint256",
indexed: false,
internalType: "uint256",
},
{
name: "description",
type: "string",
indexed: false,
internalType: "string",
},
],
anonymous: false,
},
{
type: "event",
name: "ProposalExecuted",
inputs: [
{
name: "proposalId",
type: "uint256",
indexed: false,
internalType: "uint256",
},
],
anonymous: false,
},
{
type: "event",
name: "ProposalQueued",
inputs: [
{
name: "proposalId",
type: "uint256",
indexed: false,
internalType: "uint256",
},
{
name: "eta",
type: "uint256",
indexed: false,
internalType: "uint256",
},
],
anonymous: false,
},
{
type: "event",
name: "ProposalThresholdSet",
inputs: [
{
name: "oldProposalThreshold",
type: "uint256",
indexed: false,
internalType: "uint256",
},
{
name: "newProposalThreshold",
type: "uint256",
indexed: false,
internalType: "uint256",
},
],
anonymous: false,
},
{
type: "event",
name: "QuorumNumeratorUpdated",
inputs: [
{
name: "oldQuorumNumerator",
type: "uint256",
indexed: false,
internalType: "uint256",
},
{
name: "newQuorumNumerator",
type: "uint256",
indexed: false,
internalType: "uint256",
},
],
anonymous: false,
},
{
type: "event",
name: "TimelockChange",
inputs: [
{
name: "oldTimelock",
type: "address",
indexed: false,
internalType: "address",
},
{
name: "newTimelock",
type: "address",
indexed: false,
internalType: "address",
},
],
anonymous: false,
},
{
type: "event",
name: "VoteCast",
inputs: [
{
name: "voter",
type: "address",
indexed: true,
internalType: "address",
},
{
name: "proposalId",
type: "uint256",
indexed: false,
internalType: "uint256",
},
{
name: "support",
type: "uint8",
indexed: false,
internalType: "uint8",
},
{
name: "weight",
type: "uint256",
indexed: false,
internalType: "uint256",
},
{
name: "reason",
type: "string",
indexed: false,
internalType: "string",
},
],
anonymous: false,
},
{
type: "event",
name: "VoteCastWithParams",
inputs: [
{
name: "voter",
type: "address",
indexed: true,
internalType: "address",
},
{
name: "proposalId",
type: "uint256",
indexed: false,
internalType: "uint256",
},
{
name: "support",
type: "uint8",
indexed: false,
internalType: "uint8",
},
{
name: "weight",
type: "uint256",
indexed: false,
internalType: "uint256",
},
{
name: "reason",
type: "string",
indexed: false,
internalType: "string",
},
{
name: "params",
type: "bytes",
indexed: false,
internalType: "bytes",
},
],
anonymous: false,
},
{
type: "event",
name: "VotingDelaySet",
inputs: [
{
name: "oldVotingDelay",
type: "uint256",
indexed: false,
internalType: "uint256",
},
{
name: "newVotingDelay",
type: "uint256",
indexed: false,
internalType: "uint256",
},
],
anonymous: false,
},
{
type: "event",
name: "VotingPeriodSet",
inputs: [
{
name: "oldVotingPeriod",
type: "uint256",
indexed: false,
internalType: "uint256",
},
{
name: "newVotingPeriod",
type: "uint256",
indexed: false,
internalType: "uint256",
},
],
anonymous: false,
},
{
type: "error",
name: "Empty",
inputs: [],
},
];
var _bytecode = "0x6080806040523461001657614727908161001c8239f35b600080fdfe60806040526004361015610023575b361561001957600080fd5b61002161219e565b005b60003560e01c8063013cf08b1461033357806301ffc9a71461032e57806302a251a314610329578063034201811461032457806306f3f9e61461031f57806306fdde031461031a578063150b7a0214610315578063160cbed71461031057806324bc1a641461030b5780632656227d146103065780632d63f693146103015780632fe3e261146102fc578063328dd982146102f75780633932abb1146102f25780633bccf4fd146102ed5780633e4f49e6146102e857806340e58ee5146102e357806343859632146102de57806354fd4d50146102d957806356781388146102d45780635f398a14146102cf57806360c4247f146102ca57806370b0f660146102c55780637b3c71d3146102c05780637d5e81e2146102bb5780638b063c7d146102b657806397c3d334146102b15780639a802a6d146102ac578063a7713a70146102a7578063a890c910146102a2578063ab58fb8e1461029d578063b58131b014610298578063bc197c8114610293578063c01f9e371461028e578063c28bc2fa14610289578063c59057e414610284578063d33219b41461027f578063da95691a1461027a578063dd4e2ba514610275578063ddf0b00914610270578063deaaa7cc1461026b578063e23a9a5214610266578063ea0217cf14610261578063eb9019d41461025c578063ece40cc114610257578063f23a6e6114610252578063f8ce560a1461024d578063fc0c546a146102485763fe0d94c10361000e57611cbd565b611c93565b611c3e565b611be5565b611b84565b611aff565b611a9e565b6119d1565b611996565b611945565b6118e7565b61184d565b611823565b611807565b61177b565b611744565b6116b8565b611699565b61167b565b6115ce565b6115b3565b6114fe565b6114e2565b6113d4565b61134c565b6112f7565b611296565b611278565b611209565b6111c1565b61117f565b611125565b61107e565b61104f565b610f7d565b610f5e565b610ebf565b610db7565b610d79565b610d62565b610c9f565b610c7b565b610a63565b61096b565b61079a565b610712565b61051c565b610468565b34610463576020366003190112610463576004356103508161389c565b908060005261045f610130806020526001600160401b036103746040600020612217565b511690836000526020526103ad6103a16103946001604060002001612217565b516001600160401b031690565b6001600160401b031690565b926103c381600052610193602052604060002090565b80549094906001600160a01b031694600581015460076006830154920154926103eb85613589565b956103f587611040565b6103fe87611040565b604051998a99600260078a149914978b9895926101209895929b9a9794919b6101408b019c8b5260018060a01b031660208b015260408a01526060890152608088015260a087015260c086015260e085015215156101008401521515910152565b0390f35b600080fd5b346104635760203660031901126104635760043563ffffffff60e01b81168091036104635761045f90636e665ced60e01b81149081156104b6575b5060405190151581529081906020820190565b63bf26d89760e01b811491508115610500575b81156104ef575b81156104de575b50386104a3565b6301ffc9a760e01b149050386104d7565b630271189760e51b811491506104d0565b6379dd796f60e01b811491506104c9565b600091031261046357565b3461046357600036600319011261046357602061016254604051908152f35b6024359060ff8216820361046357565b6044359060ff8216820361046357565b9181601f84011215610463578235916001600160401b038311610463576020838186019501011161046357565b634e487b7160e01b600052604160045260246000fd5b606081019081106001600160401b038211176105b957604052565b610588565b6001600160401b0381116105b957604052565b604081019081106001600160401b038211176105b957604052565b608081019081106001600160401b038211176105b957604052565b602081019081106001600160401b038211176105b957604052565b60c081019081106001600160401b038211176105b957604052565b90601f801991011681019081106001600160401b038211176105b957604052565b6040519061066b826105d1565b565b6001600160401b0381116105b957601f01601f191660200190565b9190916106948161066d565b6106a1604051918261063d565b8093828252821161046357818160009384602080950137010152565b9291926106c98261066d565b916106d7604051938461063d565b829481845281830111610463578281602093846000960137010152565b9080601f830112156104635781602061070f933591016106bd565b90565b346104635760e03660031901126104635761072b61053b565b6001600160401b036044358181116104635761074b90369060040161055b565b91606435908111610463576107649036906004016106f4565b9260843560ff811681036104635761045f9461078a9460c4359460a4359460043561248a565b6040519081529081906020820190565b346104635760203660031901126104635761022a54600435906001600160a01b03166107c73382146126c6565b30036108ec575b60648111610875577f0553476bf02ef2726e8ce5ced78d63e26e602e4a2257b1f559418e24b463399790610800613df4565b8015158061086a575b610833575b6108178261414d565b505060408051918252602082019290925290819081015b0390a1005b61086561083f826144f4565b61086061084a61065e565b600081526001600160e01b039092166020830152565b614026565b61080e565b506101f95415610809565b60405162461bcd60e51b815260206004820152604360248201527f476f7665726e6f72566f74657351756f72756d4672616374696f6e3a2071756f60448201527f72756d4e756d657261746f72206f7665722071756f72756d44656e6f6d696e616064820152623a37b960e91b608482015260a490fd5b6108f63636610688565b602081519101205b80610907614692565b036108fe57506107ce565b60005b8381106109255750506000910152565b8181015183820152602001610915565b9060209161094e81518092818552858086019101610912565b601f01601f1916010190565b90602061070f928181520190610935565b3461046357600080600319360112610a4f57604051908061012f9081549061099282611fe3565b80865292600192808416908115610a2257506001146109c8575b61045f866109bc8188038261063d565b6040519182918261095a565b815292507f232da9e50dad2971456a78fb5cd6ff6b75019984d6e918139ce990999420f9795b828410610a0a5750505081016020016109bc8261045f386109ac565b805460208587018101919091529093019281016109ee565b905086955061045f969350602092506109bc94915060ff191682840152151560051b8201019293386109ac565b80fd5b6001600160a01b0381160361046357565b3461046357608036600319011261046357610a7f600435610a52565b610a8a602435610a52565b6064356001600160401b03811161046357610aa99036906004016106f4565b50604051630a85bd0160e11b8152602090f35b6001600160401b0381116105b95760051b60200190565b81601f8201121561046357803591610aea83610abc565b92610af8604051948561063d565b808452602092838086019260051b820101928311610463578301905b828210610b22575050505090565b8380918335610b3081610a52565b815201910190610b14565b81601f8201121561046357803591610b5283610abc565b92610b60604051948561063d565b808452602092838086019260051b820101928311610463578301905b828210610b8a575050505090565b81358152908301908301610b7c565b9080601f8301121561046357813590610bb182610abc565b92610bbf604051948561063d565b828452602092838086019160051b8301019280841161046357848301915b848310610bed5750505050505090565b82356001600160401b038111610463578691610c0e848480948901016106f4565b815201920191610bdd565b6080600319820112610463576001600160401b03916004358381116104635782610c4591600401610ad3565b926024358181116104635783610c5d91600401610b3b565b9260443591821161046357610c7491600401610b99565b9060643590565b34610463576020610c97610c8e36610c19565b929190916139aa565b604051908152f35b34610463576000366003190112610463576000194301438111610d24576101c554604051632394e7a360e21b8152600481018390529190602090839060249082906001600160a01b03165afa918215610d5d57600092610d29575b50610d0490613e73565b90818102918183041490151715610d245760405160649091048152602090f35b612402565b610d04919250610d4f9060203d8111610d56575b610d47818361063d565b81019061388d565b9190610cfa565b503d610d3d565b61357d565b6020610c97610d7036610c19565b92919091612294565b346104635760203660031901126104635760043560005261013060205260206001600160401b03610dad6040600020612217565b5116604051908152f35b346104635760003660031901126104635760206040517fb3b3f3b703cd84ce352197dcff232b1b5d3cfb2025ce47cf04742d0651f1af888152f35b90815180825260208080930193019160005b828110610e12575050505090565b83516001600160a01b031685529381019392810192600101610e04565b90815180825260208080930193019160005b828110610e4f575050505090565b835185529381019392810192600101610e41565b908082519081815260208091019281808460051b8301019501936000915b848310610e915750505050505090565b9091929394958480610eaf600193601f198682030187528a51610935565b9801930193019194939290610e81565b3461046357602036600319011261046357600435600052610193602052610f34604060002061045f610ef360018301612cd4565b91610f50610f0360028301612d2c565b91610f42610f1f6004610f1860038501612bf7565b9301612bf7565b93604051978897608089526080890190610df2565b908782036020890152610e2f565b908582036040870152610e63565b908382036060850152610e63565b3461046357600036600319011261046357602061016154604051908152f35b346104635760a03660031901126104635761045f61078a600435610f9f61053b565b61101461100c610fad61054b565b60405160208101917f150214d74d59b7d1e90c73fc22ef3d991dd0a76b046543d4d80ab92d2a50328f835286604083015260ff8616606083015260608252610ff4826105ec565b6110076084359360643593519020614473565b6143f7565b9190916142d7565b6040519261102184610607565b60008452612525565b634e487b7160e01b600052602160045260246000fd5b6008111561104a57565b61102a565b346104635760203660031901126104635761106b600435613589565b604051600882101561104a576020918152f35b346104635760203660031901126104635760043560005261019360205261002160406000206110c160018060a01b03825416803314908115611106575b50612d7b565b6110e26110d060038301612bf7565b6110dc60048401612bf7565b90612dfe565b60098201549161110060026110f960018401612cd4565b9201612d2c565b90613bb9565b61111a915061111443612964565b90611f14565b6101635411386110bb565b3461046357604036600319011261046357602060ff61117360243561114981610a52565b600435600052610193845260086040600020019060018060a01b0316600052602052604060002090565b54166040519015158152f35b346104635760003660031901126104635761045f60405161119f816105d1565b60018152603160f81b6020820152604051918291602083526020830190610935565b34610463576040366003190112610463576020610c976111df61053b565b6040516111eb81610607565b60008152604051916111fc83610607565b60008352336004356125a1565b346104635760803660031901126104635761122261053b565b6001600160401b03906044358281116104635761124390369060040161055b565b90916064359384116104635761126e610c979361126660209636906004016106f4565b9336916106bd565b90336004356125a1565b34610463576020366003190112610463576020610c97600435613e73565b346104635760203660031901126104635761022a546001600160a01b03166112bf3382146126c6565b30036112d1575b6100216004356133e1565b6112db3636610688565b602081519101205b806112ec614692565b036112e357506112c6565b346104635760603660031901126104635761131061053b565b6044356001600160401b0381116104635760209161133f611338610c9793369060040161055b565b36916106bd565b604051916111fc83610607565b34610463576080366003190112610463576001600160401b036004358181116104635761137d903690600401610ad3565b9060243581811161046357611396903690600401610b3b565b91604435828111610463576113af903690600401610b99565b6064359283116104635761045f936113ce61078a9436906004016106f4565b92612806565b346104635760c0366003190112610463576004356113f181610a52565b61145260243561140081610a52565b6000549261142560ff8560081c1615809581966114d4575b81156114b4575b50611d09565b83611438600160ff196000541617600055565b61149b575b60a43591608435916064359160443591611d6c565b61145857005b61146861ff001960005416600055565b604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890806020810161082e565b6114af61010061ff00196000541617600055565b61143d565b303b159150816114c6575b503861141f565b6001915060ff1614386114bf565b600160ff8216109150611418565b3461046357600036600319011261046357602060405160648152f35b346104635760603660031901126104635760043561151b81610a52565b6044356001600160401b0381116104635761153a9036906004016106f4565b506101c554604051630748d63560e31b81526001600160a01b03928316600482015260248035908201529160209183916044918391165afa8015610d5d5761045f91600091611595575b506040519081529081906020820190565b6115ad915060203d8111610d5657610d47818361063d565b38611584565b34610463576000366003190112610463576020610c97613df4565b34610463576020366003190112610463576004356115eb81610a52565b61022a805490916001600160a01b039182166116083382146126c6565b3003611655575b7f08f74ea46ef7894f65eabfb5e6e695de773a000b47c529ab559178069b226401604083855493169381519084168152846020820152a16001600160a01b031916179055005b61165f3636610688565b602081519101205b80611670614692565b03611667575061160f565b34610463576020366003190112610463576020610c9760043561389c565b3461046357600036600319011261046357602061016354604051908152f35b346104635760a0366003190112610463576116d4600435610a52565b6116df602435610a52565b6001600160401b03604435818111610463576116ff903690600401610b3b565b5060643581811161046357611718903690600401610b3b565b50608435908111610463576117319036906004016106f4565b5060405163bc197c8160e01b8152602090f35b346104635760203660031901126104635760043560005261013060205260206001600160401b03610dad6001604060002001612217565b60603660031901126104635760043561179381610a52565b6044356001600160401b038111610463576117b290369060040161055b565b61022a549091906001600160a01b03166117cd3382146126c6565b30036117e1575b6100219260243590612712565b6117eb3636610688565b602081519101205b806117fc614692565b036117f357506117d4565b34610463576020610c9761181a36610c19565b929190916121b3565b346104635760003660031901126104635761022a546040516001600160a01b039091168152602090f35b346104635760a0366003190112610463576001600160401b03600480358281116104635761187e9036908301610ad3565b602435838111610463576118959036908401610b3b565b604435848111610463576118ac9036908501610b99565b606435858111610463576118c39036908601610b99565b91608435958611610463576118e161078a9561045f973691016106f4565b93612b73565b346104635760003660031901126104635761045f604051611907816105d1565b601a81527f737570706f72743d627261766f2671756f72756d3d627261766f0000000000006020820152604051918291602083526020830190610935565b346104635760203660031901126104635760043560005261019360205261002160406000206119796110d060038301612bf7565b60098201549161199060026110f960018401612cd4565b906139aa565b346104635760003660031901126104635760206040517f150214d74d59b7d1e90c73fc22ef3d991dd0a76b046543d4d80ab92d2a50328f8152f35b34610463576040806003193601126104635761045f90611a396024356119f681610a52565b6000838051611a048161059e565b8281528260208201520152600435600052610193602052600883600020019060018060a01b0316600052602052604060002090565b906001600160601b03815192611a4e8461059e565b5460ff81161515845260ff8160081c16602085015260101c1681830152519182918291909160406001600160601b0381606084019580511515855260ff6020820151166020860152015116910152565b3461046357602036600319011