Contract Overview
Balance:
0 MOVR
MOVR Value:
$0.00
My Name Tag:
Not Available, login to update
[ Download CSV Export ]
Contract Name:
TemplarBridge
Compiler Version
v0.8.6+commit.11564f7e
Contract Source Code (Solidity)
/** *Submitted for verification at moonriver.moonscan.io on 2022-01-14 */ // SPDX-License-Identifier: MIT pragma solidity 0.8.6; /** * @dev Interface of the ERC20 standard as defined in the EIP. */ interface IERC20 { /** * @dev Returns the amount of tokens in existence. */ function totalSupply() external view returns (uint256); /** * @dev Returns the amount of tokens owned by `account`. */ function balanceOf(address account) external view returns (uint256); /** * @dev Moves `amount` tokens from the caller's account to `recipient`. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event. */ function transfer(address recipient, uint256 amount) external returns (bool); /** * @dev Returns the remaining number of tokens that `spender` will be * allowed to spend on behalf of `owner` through {transferFrom}. This is * zero by default. * * This value changes when {approve} or {transferFrom} are called. */ function allowance(address owner, address spender) external view returns (uint256); /** * @dev Sets `amount` as the allowance of `spender` over the caller's tokens. * * Returns a boolean value indicating whether the operation succeeded. * * IMPORTANT: Beware that changing an allowance with this method brings the risk * that someone may use both the old and the new allowance by unfortunate * transaction ordering. One possible solution to mitigate this race * condition is to first reduce the spender's allowance to 0 and set the * desired value afterwards: * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 * * Emits an {Approval} event. */ function approve(address spender, uint256 amount) external returns (bool); /** * @dev Moves `amount` tokens from `sender` to `recipient` using the * allowance mechanism. `amount` is then deducted from the caller's * allowance. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event. */ function transferFrom( address sender, address recipient, uint256 amount ) external returns (bool); /** * @dev Emitted when `value` tokens are moved from one account (`from`) to * another (`to`). * * Note that `value` may be zero. */ event Transfer(address indexed from, address indexed to, uint256 value); /** * @dev Emitted when the allowance of a `spender` for an `owner` is set by * a call to {approve}. `value` is the new allowance. */ event Approval(address indexed owner, address indexed spender, uint256 value); } library Address { /** * @dev Returns true if `account` is a contract. * * [IMPORTANT] * ==== * It is unsafe to assume that an address for which this function returns * false is an externally-owned account (EOA) and not a contract. * * Among others, `isContract` will return false for the following * types of addresses: * * - an externally-owned account * - a contract in construction * - an address where a contract will be created * - an address where a contract lived, but was destroyed * ==== */ function isContract(address account) internal view returns (bool) { // This method relies on extcodesize, which returns 0 for contracts in // construction, since the code is only stored at the end of the // constructor execution. uint256 size; // solhint-disable-next-line no-inline-assembly assembly { size := extcodesize(account) } return size > 0; } /** * @dev Replacement for Solidity's `transfer`: sends `amount` wei to * `recipient`, forwarding all available gas and reverting on errors. * * https://eips.ethereum.org/EIPS/eip-1884[EIP1884] increases the gas cost * of certain opcodes, possibly making contracts go over the 2300 gas limit * imposed by `transfer`, making them unable to receive funds via * `transfer`. {sendValue} removes this limitation. * * https://diligence.consensys.net/posts/2019/09/stop-using-soliditys-transfer-now/[Learn more]. * * IMPORTANT: because control is transferred to `recipient`, care must be * taken to not create reentrancy vulnerabilities. Consider using * {ReentrancyGuard} or the * https://solidity.readthedocs.io/en/v0.5.11/security-considerations.html#use-the-checks-effects-interactions-pattern[checks-effects-interactions pattern]. */ function sendValue(address payable recipient, uint256 amount) internal { require(address(this).balance >= amount, "Address: insufficient balance"); // solhint-disable-next-line avoid-low-level-calls, avoid-call-value (bool success, ) = recipient.call{ value: amount }(""); require(success, "Address: unable to send value, recipient may have reverted"); } /** * @dev Performs a Solidity function call using a low level `call`. A * plain`call` is an unsafe replacement for a function call: use this * function instead. * * If `target` reverts with a revert reason, it is bubbled up by this * function (like regular Solidity function calls). * * Returns the raw returned data. To convert to the expected return value, * use https://solidity.readthedocs.io/en/latest/units-and-global-variables.html?highlight=abi.decode#abi-encoding-and-decoding-functions[`abi.decode`]. * * Requirements: * * - `target` must be a contract. * - calling `target` with `data` must not revert. * * _Available since v3.1._ */ function functionCall(address target, bytes memory data) internal returns (bytes memory) { return functionCall(target, data, "Address: low-level call failed"); } /** * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], but with * `errorMessage` as a fallback revert reason when `target` reverts. * * _Available since v3.1._ */ function functionCall(address target, bytes memory data, string memory errorMessage) internal returns (bytes memory) { return functionCallWithValue(target, data, 0, errorMessage); } /** * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], * but also transferring `value` wei to `target`. * * Requirements: * * - the calling contract must have an ETH balance of at least `value`. * - the called Solidity function must be `payable`. * * _Available since v3.1._ */ function functionCallWithValue(address target, bytes memory data, uint256 value) internal returns (bytes memory) { return functionCallWithValue(target, data, value, "Address: low-level call with value failed"); } /** * @dev Same as {xref-Address-functionCallWithValue-address-bytes-uint256-}[`functionCallWithValue`], but * with `errorMessage` as a fallback revert reason when `target` reverts. * * _Available since v3.1._ */ function functionCallWithValue(address target, bytes memory data, uint256 value, string memory errorMessage) internal returns (bytes memory) { require(address(this).balance >= value, "Address: insufficient balance for call"); require(isContract(target), "Address: call to non-contract"); // solhint-disable-next-line avoid-low-level-calls (bool success, bytes memory returndata) = target.call{ value: value }(data); return _verifyCallResult(success, returndata, errorMessage); } /** * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], * but performing a static call. * * _Available since v3.3._ */ function functionStaticCall(address target, bytes memory data) internal view returns (bytes memory) { return functionStaticCall(target, data, "Address: low-level static call failed"); } /** * @dev Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`], * but performing a static call. * * _Available since v3.3._ */ function functionStaticCall(address target, bytes memory data, string memory errorMessage) internal view returns (bytes memory) { require(isContract(target), "Address: static call to non-contract"); // solhint-disable-next-line avoid-low-level-calls (bool success, bytes memory returndata) = target.staticcall(data); return _verifyCallResult(success, returndata, errorMessage); } function _verifyCallResult(bool success, bytes memory returndata, string memory errorMessage) private pure returns(bytes memory) { if (success) { return returndata; } else { // Look for revert reason and bubble it up if present if (returndata.length > 0) { // The easiest way to bubble the revert reason is using memory via assembly // solhint-disable-next-line no-inline-assembly assembly { let returndata_size := mload(returndata) revert(add(32, returndata), returndata_size) } } else { revert(errorMessage); } } } } /** * @title SafeERC20 * @dev Wrappers around ERC20 operations that throw on failure (when the token * contract returns false). Tokens that return no value (and instead revert or * throw on failure) are also supported, non-reverting calls are assumed to be * successful. * To use this library you can add a `using SafeERC20 for IERC20;` statement to your contract, * which allows you to call the safe operations as `token.safeTransfer(...)`, etc. */ library SafeERC20 { using Address for address; function safeTransfer( IERC20 token, address to, uint256 value ) internal { _callOptionalReturn(token, abi.encodeWithSelector(token.transfer.selector, to, value)); } function safeTransferFrom( IERC20 token, address from, address to, uint256 value ) internal { _callOptionalReturn(token, abi.encodeWithSelector(token.transferFrom.selector, from, to, value)); } /** * @dev Deprecated. This function has issues similar to the ones found in * {IERC20-approve}, and its usage is discouraged. * * Whenever possible, use {safeIncreaseAllowance} and * {safeDecreaseAllowance} instead. */ function safeApprove( IERC20 token, address spender, uint256 value ) internal { // safeApprove should only be called when setting an initial allowance, // or when resetting it to zero. To increase and decrease it, use // 'safeIncreaseAllowance' and 'safeDecreaseAllowance' // solhint-disable-next-line max-line-length require((value == 0) || (token.allowance(address(this), spender) == 0), "SafeERC20: approve from non-zero to non-zero allowance"); _callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, value)); } function safeIncreaseAllowance( IERC20 token, address spender, uint256 value ) internal { uint256 newAllowance = token.allowance(address(this), spender) + value; _callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, newAllowance)); } function safeDecreaseAllowance( IERC20 token, address spender, uint256 value ) internal { unchecked { uint256 oldAllowance = token.allowance(address(this), spender); require(oldAllowance >= value, "SafeERC20: decreased allowance below zero"); uint256 newAllowance = oldAllowance - value; _callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, newAllowance)); } } /** * @dev Imitates a Solidity high-level call (i.e. a regular function call to a contract), relaxing the requirement * on the return value: the return value is optional (but if data is returned, it must not be false). * @param token The token targeted by the call. * @param data The call data (encoded using abi.encode or one of its variants). */ function _callOptionalReturn(IERC20 token, bytes memory data) private { // We need to perform a low level call here, to bypass Solidity's return data size checking mechanism, since // we're implementing it ourselves. We use {Address.functionCall} to perform this call, which verifies that // the target address contains contract code and also asserts for success in the low-level call. bytes memory returndata = address(token).functionCall(data, "SafeERC20: low-level call failed"); if (returndata.length > 0) { // Return data is optional // solhint-disable-next-line max-line-length require(abi.decode(returndata, (bool)), "SafeERC20: ERC20 operation did not succeed"); } } } /* * @dev Provides information about the current execution context, including the * sender of the transaction and its data. While these are generally available * via msg.sender and msg.data, they should not be accessed in such a direct * manner, since when dealing with meta-transactions the account sending and * paying for execution may not be the actual sender (as far as an application * is concerned). * * This contract is only required for intermediate, library-like contracts. */ abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } function _msgData() internal view virtual returns (bytes calldata) { this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691 return msg.data; } } /** * @dev Contract module which provides a basic access control mechanism, where * there is an account (an owner) that can be granted exclusive access to * specific functions. * * By default, the owner account will be the one that deploys the contract. This * can later be changed with {transferOwnership}. * * This module is used through inheritance. It will make available the modifier * `onlyOwner`, which can be applied to your functions to restrict their use to * the owner. */ abstract contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); /** * @dev Initializes the contract setting the deployer as the initial owner. */ constructor() { address msgSender = _msgSender(); _owner = msgSender; emit OwnershipTransferred(address(0), msgSender); } /** * @dev Returns the address of the current owner. */ function owner() public view virtual returns (address) { return _owner; } /** * @dev Throws if called by any account other than the owner. */ modifier onlyOwner() { require(owner() == _msgSender(), "Ownable: caller is not the owner"); _; } /** * @dev Leaves the contract without owner. It will not be possible to call * `onlyOwner` functions anymore. Can only be called by the current owner. * * NOTE: Renouncing ownership will leave the contract without an owner, * thereby removing any functionality that is only available to the owner. */ function renounceOwnership() public virtual onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } /** * @dev Transfers ownership of the contract to a new account (`newOwner`). * Can only be called by the current owner. */ function transferOwnership(address newOwner) public virtual onlyOwner { require(newOwner != address(0), "Ownable: new owner is the zero address"); emit OwnershipTransferred(_owner, newOwner); _owner = newOwner; } } // XXX: import "./SafeMath.sol"; library SafeMath { /** * @dev Returns the addition of two unsigned integers, reverting on * overflow. * * Counterpart to Solidity's `+` operator. * * Requirements: * * - Addition cannot overflow. */ function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); return c; } /** * @dev Returns the subtraction of two unsigned integers, reverting on * overflow (when the result is negative). * * Counterpart to Solidity's `-` operator. * * Requirements: * * - Subtraction cannot overflow. */ function sub(uint256 a, uint256 b) internal pure returns (uint256) { return sub(a, b, "SafeMath: subtraction overflow"); } /** * @dev Returns the subtraction of two unsigned integers, reverting with custom message on * overflow (when the result is negative). * * Counterpart to Solidity's `-` operator. * * Requirements: * * - Subtraction cannot overflow. */ function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b <= a, errorMessage); uint256 c = a - b; return c; } /** * @dev Returns the multiplication of two unsigned integers, reverting on * overflow. * * Counterpart to Solidity's `*` operator. * * Requirements: * * - Multiplication cannot overflow. */ function mul(uint256 a, uint256 b) internal pure returns (uint256) { // Gas optimization: this is cheaper than requiring 'a' not being zero, but the // benefit is lost if 'b' is also tested. // See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522 if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c; } /** * @dev Returns the integer division of two unsigned integers. Reverts on * division by zero. The result is rounded towards zero. * * Counterpart to Solidity's `/` operator. Note: this function uses a * `revert` opcode (which leaves remaining gas untouched) while Solidity * uses an invalid opcode to revert (consuming all remaining gas). * * Requirements: * * - The divisor cannot be zero. */ function div(uint256 a, uint256 b) internal pure returns (uint256) { return div(a, b, "SafeMath: division by zero"); } /** * @dev Returns the integer division of two unsigned integers. Reverts with custom message on * division by zero. The result is rounded towards zero. * * Counterpart to Solidity's `/` operator. Note: this function uses a * `revert` opcode (which leaves remaining gas untouched) while Solidity * uses an invalid opcode to revert (consuming all remaining gas). * * Requirements: * * - The divisor cannot be zero. */ function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b > 0, errorMessage); uint256 c = a / b; // assert(a == b * c + a % b); // There is no case in which this doesn't hold return c; } /** * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), * Reverts when dividing by zero. * * Counterpart to Solidity's `%` operator. This function uses a `revert` * opcode (which leaves remaining gas untouched) while Solidity uses an * invalid opcode to revert (consuming all remaining gas). * * Requirements: * * - The divisor cannot be zero. */ function mod(uint256 a, uint256 b) internal pure returns (uint256) { return mod(a, b, "SafeMath: modulo by zero"); } /** * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), * Reverts with custom message when dividing by zero. * * Counterpart to Solidity's `%` operator. This function uses a `revert` * opcode (which leaves remaining gas untouched) while Solidity uses an * invalid opcode to revert (consuming all remaining gas). * * Requirements: * * - The divisor cannot be zero. */ function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b != 0, errorMessage); return a % b; } } /** * @dev Contract module which allows children to implement an emergency stop * mechanism that can be triggered by an authorized account. * * This module is used through inheritance. It will make available the * modifiers `whenNotPaused` and `whenPaused`, which can be applied to * the functions of your contract. Note that they will not be pausable by * simply including this module, only once the modifiers are put in place. */ abstract contract Pausable is Context { /** * @dev Emitted when the pause is triggered by `account`. */ event Paused(address account); /** * @dev Emitted when the pause is lifted by `account`. */ event Unpaused(address account); bool private _paused; /** * @dev Initializes the contract in unpaused state. */ constructor () { _paused = false; } /** * @dev Returns true if the contract is paused, and false otherwise. */ function paused() public view virtual returns (bool) { return _paused; } /** * @dev Modifier to make a function callable only when the contract is not paused. * * Requirements: * * - The contract must not be paused. */ modifier whenNotPaused() { require(!paused(), "Pausable: paused"); _; } /** * @dev Modifier to make a function callable only when the contract is paused. * * Requirements: * * - The contract must be paused. */ modifier whenPaused() { require(paused(), "Pausable: not paused"); _; } /** * @dev Triggers stopped state. * * Requirements: * * - The contract must not be paused. */ function _pause() internal virtual whenNotPaused { _paused = true; emit Paused(_msgSender()); } /** * @dev Returns to normal state. * * Requirements: * * - The contract must be paused. */ function _unpause() internal virtual whenPaused { _paused = false; emit Unpaused(_msgSender()); } } interface IWrapSWORD { function swordIndex() external view returns (uint256); } contract TemplarBridge is Ownable, Pausable { using SafeERC20 for IERC20; using SafeMath for uint256; address public immutable wSWORD; address public bridgeReceiver; mapping(address => bool) public worker; mapping(uint256 => bool) public chainList; struct UserBridge { uint256 chainId; address from; address to; uint256 amount; bool isRelease; } mapping(uint256 => UserBridge) public userBridge; uint256 public currentUID; uint256 public releaseUID; uint256 public minAmount = 100000000000000000; // 0.1 wSWORD uint256 public maxAmount = 100000000000000000000; // 100 wSWORD modifier onlyWorker() { require(worker[msg.sender], "Worker: caller is not the worker"); _; } event Bridge(uint256 indexed _chainId, uint256 indexed _uid, address _from, address _to, uint256 _amount); event Release(uint256 indexed _uid); // ------------------------------ // contruct // ------------------------------ constructor(address _wSWORD, address _bridgeReceiver) { require(_wSWORD != address(0)); require(_bridgeReceiver != address(0)); wSWORD = _wSWORD; bridgeReceiver = _bridgeReceiver; } function getIndex() public view returns (uint256) { return IWrapSWORD(wSWORD).swordIndex(); } // ------------------------------ // bridge // ------------------------------ function bridge(uint256 _chainId, address _to, uint256 _amount) external whenNotPaused { require(chainList[_chainId], "chainId is not allow"); require(_to != address(0), "address invalid"); require(!Address.isContract(_to), "Address: call to non-contract"); require(_amount >= minAmount, "min amount to bridge"); require(_amount <= maxAmount, "max amount to bridge"); uint256 _uid = currentUID; currentUID = currentUID.add(1); UserBridge storage user = userBridge[_uid]; user.chainId = _chainId; user.from = msg.sender; user.to = _to; user.amount = _amount; // transfer IERC20(wSWORD).safeTransferFrom(msg.sender, bridgeReceiver, _amount); emit Bridge(_chainId, _uid, msg.sender, _to, _amount); } function getUserBridge(uint256 _uid) external view returns (UserBridge memory) { return userBridge[_uid]; } function checkUserBridgeQueue() external view returns (bool) { UserBridge memory user = userBridge[releaseUID]; if (user.chainId == 0) { return false; } return !user.isRelease; } // ------------------------------ // onlyWorker // ------------------------------ function release(uint256 _uid) external onlyWorker { UserBridge storage user = userBridge[_uid]; if (user.isRelease) { return; } user.isRelease = true; if (releaseUID == _uid) { releaseUID = releaseUID.add(1); } emit Release(_uid); } // ------------------------------ // onlyOwner // ------------------------------ function setPause(bool _flag) external onlyOwner { if (_flag) { _pause(); } else { _unpause(); } } function setWorker(address _worker, bool _allow) external onlyOwner { require(_worker != address(0), "address invalid"); worker[_worker] = _allow; } function setChainList(uint256 _chainId, bool _allow) external onlyOwner { require(_chainId != 0, "!chainId"); chainList[_chainId] = _allow; } function setMinAmount(uint256 _amount) external onlyOwner { minAmount = _amount; } function setMaxAmount(uint256 _amount) external onlyOwner { maxAmount = _amount; } function setBridgeReceiver(address _bridgeReceiver) external onlyOwner { require(_bridgeReceiver != address(0), "address invalid"); bridgeReceiver = _bridgeReceiver; } function setCurrentUID(uint256 _currentUID) external onlyOwner { currentUID = _currentUID; } function setReleaseUID(uint256 _releaseUID) external onlyOwner { releaseUID = _releaseUID; } function sendTokens(address _token, address recipient, uint256 _amount) external onlyOwner { require(IERC20(_token).balanceOf(address(this)) >= _amount, "Not enough tokens"); IERC20(_token).transfer(recipient, _amount); } }
[{"inputs":[{"internalType":"address","name":"_wSWORD","type":"address"},{"internalType":"address","name":"_bridgeReceiver","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"_chainId","type":"uint256"},{"indexed":true,"internalType":"uint256","name":"_uid","type":"uint256"},{"indexed":false,"internalType":"address","name":"_from","type":"address"},{"indexed":false,"internalType":"address","name":"_to","type":"address"},{"indexed":false,"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"Bridge","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"_uid","type":"uint256"}],"name":"Release","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"inputs":[{"internalType":"uint256","name":"_chainId","type":"uint256"},{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"bridge","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"bridgeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"chainList","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"checkUserBridgeQueue","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"currentUID","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getIndex","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_uid","type":"uint256"}],"name":"getUserBridge","outputs":[{"components":[{"internalType":"uint256","name":"chainId","type":"uint256"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"bool","name":"isRelease","type":"bool"}],"internalType":"struct TemplarBridge.UserBridge","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"minAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_uid","type":"uint256"}],"name":"release","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"releaseUID","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_token","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"sendTokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_bridgeReceiver","type":"address"}],"name":"setBridgeReceiver","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_chainId","type":"uint256"},{"internalType":"bool","name":"_allow","type":"bool"}],"name":"setChainList","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_currentUID","type":"uint256"}],"name":"setCurrentUID","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"setMaxAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"setMinAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_flag","type":"bool"}],"name":"setPause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_releaseUID","type":"uint256"}],"name":"setReleaseUID","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_worker","type":"address"},{"internalType":"bool","name":"_allow","type":"bool"}],"name":"setWorker","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"userBridge","outputs":[{"internalType":"uint256","name":"chainId","type":"uint256"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"bool","name":"isRelease","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"wSWORD","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"worker","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"}]
Contract Creation Code
60a060405267016345785d8a000060075568056bc75e2d631000006008553480156200002a57600080fd5b5060405162002e1938038062002e1983398181016040528101906200005091906200022f565b6000620000626200021060201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35060008060146101000a81548160ff021916908315150217905550600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156200015557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156200019057600080fd5b8173ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff1660601b8152505080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050620002c9565b600033905090565b6000815190506200022981620002af565b92915050565b60008060408385031215620002495762000248620002aa565b5b6000620002598582860162000218565b92505060206200026c8582860162000218565b9150509250929050565b600062000283826200028a565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600080fd5b620002ba8162000276565b8114620002c657600080fd5b50565b60805160601c612b23620002f66000396000818161088b01528181610a4c0152610e020152612b236000f3fe608060405234801561001057600080fd5b50600436106101a95760003560e01c806381045ead116100f9578063d044e81f11610097578063e6d66ac811610071578063e6d66ac81461046e578063f2fde38b1461048a578063f8072a5b146104a6578063fdf92fcd146104da576101a9565b8063d044e81f14610406578063d7653f6f14610422578063e691a0eb14610452576101a9565b80638da5cb5b116100d35780638da5cb5b146103925780639b2cb5d8146103b0578063bedb86fb146103ce578063c373d7f3146103ea576101a9565b806381045ead1461033a5780638910f64014610358578063897b063714610376576101a9565b80634fe47f70116101665780635f48f393116101405780635f48f393146102c657806370d48798146102e4578063715018a61461031457806376eb0f621461031e576101a9565b80634fe47f701461026e5780635c975abb1461028a5780635ee4e205146102a8576101a9565b80630a208972146101ae5780631942b941146101cc5780632f820a5f146101e857806337bdc99b1461020457806346971463146102205780634db8a9ea1461023e575b600080fd5b6101b66104f8565b6040516101c39190612366565b60405180910390f35b6101e660048036038101906101e19190611f29565b61051e565b005b61020260048036038101906101fd9190611f83565b6105a4565b005b61021e60048036038101906102199190611f29565b610914565b005b610228610a4a565b6040516102359190612366565b60405180910390f35b61025860048036038101906102539190611f29565b610a6e565b60405161026591906125fe565b60405180910390f35b61028860048036038101906102839190611f29565b610b76565b005b610292610bfc565b60405161029f91906123e1565b60405180910390f35b6102b0610c12565b6040516102bd9190612619565b60405180910390f35b6102ce610c18565b6040516102db9190612619565b60405180910390f35b6102fe60048036038101906102f99190611f29565b610c1e565b60405161030b91906123e1565b60405180910390f35b61031c610c3e565b005b61033860048036038101906103339190611f29565b610d78565b005b610342610dfe565b60405161034f9190612619565b60405180910390f35b610360610ea3565b60405161036d91906123e1565b60405180910390f35b610390600480360381019061038b9190611f29565b610fc7565b005b61039a61104d565b6040516103a79190612366565b60405180910390f35b6103b8611076565b6040516103c59190612619565b60405180910390f35b6103e860048036038101906103e39190611ecf565b61107c565b005b61040460048036038101906103ff9190611e8f565b611117565b005b610420600480360381019061041b9190611e0f565b61125e565b005b61043c60048036038101906104379190611e0f565b61138e565b60405161044991906123e1565b60405180910390f35b61046c60048036038101906104679190611fd6565b6113ae565b005b61048860048036038101906104839190611e3c565b61149d565b005b6104a4600480360381019061049f9190611e0f565b611677565b005b6104c060048036038101906104bb9190611f29565b611820565b6040516104d1959493929190612634565b60405180910390f35b6104e26118a3565b6040516104ef9190612619565b60405180910390f35b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6105266118a9565b73ffffffffffffffffffffffffffffffffffffffff1661054461104d565b73ffffffffffffffffffffffffffffffffffffffff161461059a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610591906124fe565b60405180910390fd5b8060068190555050565b6105ac610bfc565b156105ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105e3906124de565b60405180910390fd5b6003600084815260200190815260200160002060009054906101000a900460ff1661064c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106439061255e565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156106bc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106b39061259e565b60405180910390fd5b6106c5826118b1565b15610705576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106fc9061257e565b60405180910390fd5b60075481101561074a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107419061253e565b60405180910390fd5b60085481111561078f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107869061243e565b60405180910390fd5b600060055490506107ac60016005546118c490919063ffffffff16565b6005819055506000600460008381526020019081526020016000209050848160000181905550338160010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550838160020160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508281600301819055506108d033600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16857f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16611922909392919063ffffffff16565b81857f474150f2103ace3f8d1e603f1bc3e86257e2380472f3ed7cb25ef3c8d08e7dd033878760405161090593929190612381565b60405180910390a35050505050565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff166109a0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109979061251e565b60405180910390fd5b60006004600083815260200190815260200160002090508060040160009054906101000a900460ff16156109d45750610a47565b60018160040160006101000a81548160ff021916908315150217905550816006541415610a1857610a1160016006546118c490919063ffffffff16565b6006819055505b817fcf95d1fe0feb1424b6916a8d99a225f598710466d34c5a755770a1d4d49311a060405160405180910390a2505b50565b7f000000000000000000000000000000000000000000000000000000000000000081565b610a76611d49565b600460008381526020019081526020016000206040518060a0016040529081600082015481526020016001820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016002820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600382015481526020016004820160009054906101000a900460ff1615151515815250509050919050565b610b7e6118a9565b73ffffffffffffffffffffffffffffffffffffffff16610b9c61104d565b73ffffffffffffffffffffffffffffffffffffffff1614610bf2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610be9906124fe565b60405180910390fd5b8060088190555050565b60008060149054906101000a900460ff16905090565b60065481565b60085481565b60036020528060005260406000206000915054906101000a900460ff1681565b610c466118a9565b73ffffffffffffffffffffffffffffffffffffffff16610c6461104d565b73ffffffffffffffffffffffffffffffffffffffff1614610cba576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cb1906124fe565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610d806118a9565b73ffffffffffffffffffffffffffffffffffffffff16610d9e61104d565b73ffffffffffffffffffffffffffffffffffffffff1614610df4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610deb906124fe565b60405180910390fd5b8060058190555050565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663a3ef8e5a6040518163ffffffff1660e01b815260040160206040518083038186803b158015610e6657600080fd5b505afa158015610e7a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e9e9190611f56565b905090565b6000806004600060065481526020019081526020016000206040518060a0016040529081600082015481526020016001820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016002820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600382015481526020016004820160009054906101000a900460ff1615151515815250509050600081600001511415610fba576000915050610fc4565b8060800151159150505b90565b610fcf6118a9565b73ffffffffffffffffffffffffffffffffffffffff16610fed61104d565b73ffffffffffffffffffffffffffffffffffffffff1614611043576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161103a906124fe565b60405180910390fd5b8060078190555050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60075481565b6110846118a9565b73ffffffffffffffffffffffffffffffffffffffff166110a261104d565b73ffffffffffffffffffffffffffffffffffffffff16146110f8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110ef906124fe565b60405180910390fd5b801561110b576111066119ab565b611114565b611113611a4e565b5b50565b61111f6118a9565b73ffffffffffffffffffffffffffffffffffffffff1661113d61104d565b73ffffffffffffffffffffffffffffffffffffffff1614611193576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161118a906124fe565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611203576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111fa9061259e565b60405180910390fd5b80600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b6112666118a9565b73ffffffffffffffffffffffffffffffffffffffff1661128461104d565b73ffffffffffffffffffffffffffffffffffffffff16146112da576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112d1906124fe565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561134a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113419061259e565b60405180910390fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60026020528060005260406000206000915054906101000a900460ff1681565b6113b66118a9565b73ffffffffffffffffffffffffffffffffffffffff166113d461104d565b73ffffffffffffffffffffffffffffffffffffffff161461142a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611421906124fe565b60405180910390fd5b600082141561146e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114659061247e565b60405180910390fd5b806003600084815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b6114a56118a9565b73ffffffffffffffffffffffffffffffffffffffff166114c361104d565b73ffffffffffffffffffffffffffffffffffffffff1614611519576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611510906124fe565b60405180910390fd5b808373ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b81526004016115539190612366565b60206040518083038186803b15801561156b57600080fd5b505afa15801561157f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115a39190611f56565b10156115e4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115db906125de565b60405180910390fd5b8273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff1660e01b815260040161161f9291906123b8565b602060405180830381600087803b15801561163957600080fd5b505af115801561164d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116719190611efc565b50505050565b61167f6118a9565b73ffffffffffffffffffffffffffffffffffffffff1661169d61104d565b73ffffffffffffffffffffffffffffffffffffffff16146116f3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116ea906124fe565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611763576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161175a9061245e565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60046020528060005260406000206000915090508060000154908060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060030154908060040160009054906101000a900460ff16905085565b60055481565b600033905090565b600080823b905060008111915050919050565b60008082846118d391906126b9565b905083811015611918576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161190f9061249e565b60405180910390fd5b8091505092915050565b6119a5846323b872dd60e01b85858560405160240161194393929190612381565b604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050611aef565b50505050565b6119b3610bfc565b156119f3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119ea906124de565b60405180910390fd5b6001600060146101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258611a376118a9565b604051611a449190612366565b60405180910390a1565b611a56610bfc565b611a95576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a8c9061241e565b60405180910390fd5b60008060146101000a81548160ff0219169083151502179055507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa611ad86118a9565b604051611ae59190612366565b60405180910390a1565b6000611b51826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c65648152508573ffffffffffffffffffffffffffffffffffffffff16611bb69092919063ffffffff16565b9050600081511115611bb15780806020019051810190611b719190611efc565b611bb0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ba7906125be565b60405180910390fd5b5b505050565b6060611bc58484600085611bce565b90509392505050565b606082471015611c13576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c0a906124be565b60405180910390fd5b611c1c856118b1565b611c5b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c529061257e565b60405180910390fd5b6000808673ffffffffffffffffffffffffffffffffffffffff168587604051611c84919061234f565b60006040518083038185875af1925050503d8060008114611cc1576040519150601f19603f3d011682016040523d82523d6000602084013e611cc6565b606091505b5091509150611cd6828286611ce2565b92505050949350505050565b60608315611cf257829050611d42565b600083511115611d055782518084602001fd5b816040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d3991906123fc565b60405180910390fd5b9392505050565b6040518060a0016040528060008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600081526020016000151581525090565b600081359050611db581612aa8565b92915050565b600081359050611dca81612abf565b92915050565b600081519050611ddf81612abf565b92915050565b600081359050611df481612ad6565b92915050565b600081519050611e0981612ad6565b92915050565b600060208284031215611e2557611e246127b9565b5b6000611e3384828501611da6565b91505092915050565b600080600060608486031215611e5557611e546127b9565b5b6000611e6386828701611da6565b9350506020611e7486828701611da6565b9250506040611e8586828701611de5565b9150509250925092565b60008060408385031215611ea657611ea56127b9565b5b6000611eb485828601611da6565b9250506020611ec585828601611dbb565b9150509250929050565b600060208284031215611ee557611ee46127b9565b5b6000611ef384828501611dbb565b91505092915050565b600060208284031215611f1257611f116127b9565b5b6000611f2084828501611dd0565b91505092915050565b600060208284031215611f3f57611f3e6127b9565b5b6000611f4d84828501611de5565b91505092915050565b600060208284031215611f6c57611f6b6127b9565b5b6000611f7a84828501611dfa565b91505092915050565b600080600060608486031215611f9c57611f9b6127b9565b5b6000611faa86828701611de5565b9350506020611fbb86828701611da6565b9250506040611fcc86828701611de5565b9150509250925092565b60008060408385031215611fed57611fec6127b9565b5b6000611ffb85828601611de5565b925050602061200c85828601611dbb565b9150509250929050565b61201f8161270f565b82525050565b61202e8161270f565b82525050565b61203d81612721565b82525050565b61204c81612721565b82525050565b600061205d82612687565b612067818561269d565b9350612077818560208601612757565b80840191505092915050565b600061208e82612692565b61209881856126a8565b93506120a8818560208601612757565b6120b1816127be565b840191505092915050565b60006120c96014836126a8565b91506120d4826127cf565b602082019050919050565b60006120ec6014836126a8565b91506120f7826127f8565b602082019050919050565b600061210f6026836126a8565b915061211a82612821565b604082019050919050565b60006121326008836126a8565b915061213d82612870565b602082019050919050565b6000612155601b836126a8565b915061216082612899565b602082019050919050565b60006121786026836126a8565b9150612183826128c2565b604082019050919050565b600061219b6010836126a8565b91506121a682612911565b602082019050919050565b60006121be6020836126a8565b91506121c98261293a565b602082019050919050565b60006121e16020836126a8565b91506121ec82612963565b602082019050919050565b60006122046014836126a8565b915061220f8261298c565b602082019050919050565b60006122276014836126a8565b9150612232826129b5565b602082019050919050565b600061224a601d836126a8565b9150612255826129de565b602082019050919050565b600061226d600f836126a8565b915061227882612a07565b602082019050919050565b6000612290602a836126a8565b915061229b82612a30565b604082019050919050565b60006122b36011836126a8565b91506122be82612a7f565b602082019050919050565b60a0820160008201516122df6000850182612331565b5060208201516122f26020850182612016565b5060408201516123056040850182612016565b5060608201516123186060850182612331565b50608082015161232b6080850182612034565b50505050565b61233a8161274d565b82525050565b6123498161274d565b82525050565b600061235b8284612052565b915081905092915050565b600060208201905061237b6000830184612025565b92915050565b60006060820190506123966000830186612025565b6123a36020830185612025565b6123b06040830184612340565b949350505050565b60006040820190506123cd6000830185612025565b6123da6020830184612340565b9392505050565b60006020820190506123f66000830184612043565b92915050565b600060208201905081810360008301526124168184612083565b905092915050565b60006020820190508181036000830152612437816120bc565b9050919050565b60006020820190508181036000830152612457816120df565b9050919050565b6000602082019050818103600083015261247781612102565b9050919050565b6000602082019050818103600083015261249781612125565b9050919050565b600060208201905081810360008301526124b781612148565b9050919050565b600060208201905081810360008301526124d78161216b565b9050919050565b600060208201905081810360008301526124f78161218e565b9050919050565b60006020820190508181036000830152612517816121b1565b9050919050565b60006020820190508181036000830152612537816121d4565b9050919050565b60006020820190508181036000830152612557816121f7565b9050919050565b600060208201905081810360008301526125778161221a565b9050919050565b600060208201905081810360008301526125978161223d565b9050919050565b600060208201905081810360008301526125b781612260565b9050919050565b600060208201905081810360008301526125d781612283565b9050919050565b600060208201905081810360008301526125f7816122a6565b9050919050565b600060a08201905061261360008301846122c9565b92915050565b600060208201905061262e6000830184612340565b92915050565b600060a0820190506126496000830188612340565b6126566020830187612025565b6126636040830186612025565b6126706060830185612340565b61267d6080830184612043565b9695505050505050565b600081519050919050565b600081519050919050565b600081905092915050565b600082825260208201905092915050565b60006126c48261274d565b91506126cf8361274d565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156127045761270361278a565b5b828201905092915050565b600061271a8261272d565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b60005b8381101561277557808201518184015260208101905061275a565b83811115612784576000848401525b50505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600080fd5b6000601f19601f8301169050919050565b7f5061757361626c653a206e6f7420706175736564000000000000000000000000600082015250565b7f6d617820616d6f756e7420746f20627269646765000000000000000000000000600082015250565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f21636861696e4964000000000000000000000000000000000000000000000000600082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f416464726573733a20696e73756666696369656e742062616c616e636520666f60008201527f722063616c6c0000000000000000000000000000000000000000000000000000602082015250565b7f5061757361626c653a2070617573656400000000000000000000000000000000600082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f576f726b65723a2063616c6c6572206973206e6f742074686520776f726b6572600082015250565b7f6d696e20616d6f756e7420746f20627269646765000000000000000000000000600082015250565b7f636861696e4964206973206e6f7420616c6c6f77000000000000000000000000600082015250565b7f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000600082015250565b7f6164647265737320696e76616c69640000000000000000000000000000000000600082015250565b7f5361666545524332303a204552433230206f7065726174696f6e20646964206e60008201527f6f74207375636365656400000000000000000000000000000000000000000000602082015250565b7f4e6f7420656e6f75676820746f6b656e73000000000000000000000000000000600082015250565b612ab18161270f565b8114612abc57600080fd5b50565b612ac881612721565b8114612ad357600080fd5b50565b612adf8161274d565b8114612aea57600080fd5b5056fea26469706673582212206c7fa7ac4c320259b9a23b75d8e1b490107b54518f75bc71b4341f490104213264736f6c63430008060033000000000000000000000000e1b9b34b03ec34b0802398b7669de6d0d43c98710000000000000000000000006510d4e6d2991db86383932c26c5ed2077f385de
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000e1b9b34b03ec34b0802398b7669de6d0d43c98710000000000000000000000006510d4e6d2991db86383932c26c5ed2077f385de
-----Decoded View---------------
Arg [0] : _wSWORD (address): 0xe1b9b34b03ec34b0802398b7669de6d0d43c9871
Arg [1] : _bridgeReceiver (address): 0x6510d4e6d2991db86383932c26c5ed2077f385de
-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 000000000000000000000000e1b9b34b03ec34b0802398b7669de6d0d43c9871
Arg [1] : 0000000000000000000000006510d4e6d2991db86383932c26c5ed2077f385de
Deployed ByteCode Sourcemap
23685:4668:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23842:29;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;27992:106;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;25196:852;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;26522:331;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;23804:31;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;26056:121;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;27576:96;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;22410:86;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;24214:25;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;24312:48;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;23923:41;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16115:148;;;:::i;:::-;;27878:106;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;24988:107;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;26185:232;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;27472:96;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;15464:87;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;24246:45;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;26957:156;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;27121:171;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;27680:190;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;23878:38;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;27300:164;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;28106:244;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;16418;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;24127:48;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;;;:::i;:::-;;;;;;;;24182:25;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;23842:29;;;;;;;;;;;;;:::o;27992:106::-;15695:12;:10;:12::i;:::-;15684:23;;:7;:5;:7::i;:::-;:23;;;15676:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;28079:11:::1;28066:10;:24;;;;27992:106:::0;:::o;25196:852::-;22736:8;:6;:8::i;:::-;22735:9;22727:38;;;;;;;;;;;;:::i;:::-;;;;;;;;;25302:9:::1;:19;25312:8;25302:19;;;;;;;;;;;;;;;;;;;;;25294:52;;;;;;;;;;;;:::i;:::-;;;;;;;;;25380:1;25365:17;;:3;:17;;;;25357:45;;;;;;;;;;;;:::i;:::-;;;;;;;;;25422:23;25441:3;25422:18;:23::i;:::-;25421:24;25413:66;;;;;;;;;;;;:::i;:::-;;;;;;;;;25509:9;;25498:7;:20;;25490:53;;;;;;;;;;;;:::i;:::-;;;;;;;;;25573:9;;25562:7;:20;;25554:53;;;;;;;;;;;;:::i;:::-;;;;;;;;;25628:12;25643:10;;25628:25;;25677:17;25692:1;25677:10;;:14;;:17;;;;:::i;:::-;25664:10;:30;;;;25707:23;25733:10;:16;25744:4;25733:16;;;;;;;;;;;25707:42;;25775:8;25760:4;:12;;:23;;;;25806:10;25794:4;:9;;;:22;;;;;;;;;;;;;;;;;;25837:3;25827:4;:7;;;:13;;;;;;;;;;;;;;;;;;25865:7;25851:4;:11;;:21;;;;25906:68;25938:10;25950:14;;;;;;;;;;;25966:7;25913:6;25906:31;;;;:68;;;;;;:::i;:::-;26009:4;25999:8;25992:48;26015:10;26027:3;26032:7;25992:48;;;;;;;;:::i;:::-;;;;;;;;25283:765;;25196:852:::0;;;:::o;26522:331::-;24424:6;:18;24431:10;24424:18;;;;;;;;;;;;;;;;;;;;;;;;;24416:63;;;;;;;;;;;;:::i;:::-;;;;;;;;;26584:23:::1;26610:10;:16;26621:4;26610:16;;;;;;;;;;;26584:42;;26641:4;:14;;;;;;;;;;;;26637:53;;;26672:7;;;26637:53;26717:4;26700;:14;;;:21;;;;;;;;;;;;;;;;;;26752:4;26738:10;;:18;26734:81;;;26786:17;26801:1;26786:10;;:14;;:17;;;;:::i;:::-;26773:10;:30;;;;26734:81;26840:4;26832:13;;;;;;;;;;26573:280;24490:1;26522:331:::0;:::o;23804:31::-;;;:::o;26056:121::-;26116:17;;:::i;:::-;26153:10;:16;26164:4;26153:16;;;;;;;;;;;26146:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26056:121;;;:::o;27576:96::-;15695:12;:10;:12::i;:::-;15684:23;;:7;:5;:7::i;:::-;:23;;;15676:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;27657:7:::1;27645:9;:19;;;;27576:96:::0;:::o;22410:86::-;22457:4;22481:7;;;;;;;;;;;22474:14;;22410:86;:::o;24214:25::-;;;;:::o;24312:48::-;;;;:::o;23923:41::-;;;;;;;;;;;;;;;;;;;;;;:::o;16115:148::-;15695:12;:10;:12::i;:::-;15684:23;;:7;:5;:7::i;:::-;:23;;;15676:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;16222:1:::1;16185:40;;16206:6;::::0;::::1;;;;;;;;16185:40;;;;;;;;;;;;16253:1;16236:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;16115:148::o:0;27878:106::-;15695:12;:10;:12::i;:::-;15684:23;;:7;:5;:7::i;:::-;:23;;;15676:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;27965:11:::1;27952:10;:24;;;;27878:106:::0;:::o;24988:107::-;25029:7;25067:6;25056:29;;;:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;25049:38;;24988:107;:::o;26185:232::-;26240:4;26257:22;26282:10;:22;26293:10;;26282:22;;;;;;;;;;;26257:47;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26335:1;26319:4;:12;;;:17;26315:62;;;26360:5;26353:12;;;;;26315:62;26395:4;:14;;;26394:15;26387:22;;;26185:232;;:::o;27472:96::-;15695:12;:10;:12::i;:::-;15684:23;;:7;:5;:7::i;:::-;:23;;;15676:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;27553:7:::1;27541:9;:19;;;;27472:96:::0;:::o;15464:87::-;15510:7;15537:6;;;;;;;;;;;15530:13;;15464:87;:::o;24246:45::-;;;;:::o;26957:156::-;15695:12;:10;:12::i;:::-;15684:23;;:7;:5;:7::i;:::-;:23;;;15676:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;27021:5:::1;27017:89;;;27043:8;:6;:8::i;:::-;27017:89;;;27084:10;:8;:10::i;:::-;27017:89;26957:156:::0;:::o;27121:171::-;15695:12;:10;:12::i;:::-;15684:23;;:7;:5;:7::i;:::-;:23;;;15676:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;27227:1:::1;27208:21;;:7;:21;;;;27200:49;;;;;;;;;;;;:::i;:::-;;;;;;;;;27278:6;27260;:15;27267:7;27260:15;;;;;;;;;;;;;;;;:24;;;;;;;;;;;;;;;;;;27121:171:::0;;:::o;27680:190::-;15695:12;:10;:12::i;:::-;15684:23;;:7;:5;:7::i;:::-;:23;;;15676:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;27797:1:::1;27770:29;;:15;:29;;;;27762:57;;;;;;;;;;;;:::i;:::-;;;;;;;;;27847:15;27830:14;;:32;;;;;;;;;;;;;;;;;;27680:190:::0;:::o;23878:38::-;;;;;;;;;;;;;;;;;;;;;;:::o;27300:164::-;15695:12;:10;:12::i;:::-;15684:23;;:7;:5;:7::i;:::-;:23;;;15676:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;27403:1:::1;27391:8;:13;;27383:34;;;;;;;;;;;;:::i;:::-;;;;;;;;;27450:6;27428:9;:19;27438:8;27428:19;;;;;;;;;;;;:28;;;;;;;;;;;;;;;;;;27300:164:::0;;:::o;28106:244::-;15695:12;:10;:12::i;:::-;15684:23;;:7;:5;:7::i;:::-;:23;;;15676:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;28259:7:::1;28223:6;28216:24;;;28249:4;28216:39;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:50;;28208:80;;;;;;;;;;;;:::i;:::-;;;;;;;;;28306:6;28299:23;;;28323:9;28334:7;28299:43;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;28106:244:::0;;;:::o;16418:::-;15695:12;:10;:12::i;:::-;15684:23;;:7;:5;:7::i;:::-;:23;;;15676:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;16527:1:::1;16507:22;;:8;:22;;;;16499:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;16617:8;16588:38;;16609:6;::::0;::::1;;;;;;;;16588:38;;;;;;;;;;;;16646:8;16637:6;::::0;:17:::1;;;;;;;;;;;;;;;;;;16418:244:::0;:::o;24127:48::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;24182:25::-;;;;:::o;14109:98::-;14162:7;14189:10;14182:17;;14109:98;:::o;3418:422::-;3478:4;3686:12;3797:7;3785:20;3777:28;;3831:1;3824:4;:8;3817:15;;;3418:422;;;:::o;16966:181::-;17024:7;17044:9;17060:1;17056;:5;;;;:::i;:::-;17044:17;;17085:1;17080;:6;;17072:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;17138:1;17131:8;;;16966:181;;;;:::o;10418:248::-;10562:96;10582:5;10612:27;;;10641:4;10647:2;10651:5;10589:68;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10562:19;:96::i;:::-;10418:248;;;;:::o;23210:118::-;22736:8;:6;:8::i;:::-;22735:9;22727:38;;;;;;;;;;;;:::i;:::-;;;;;;;;;23280:4:::1;23270:7;;:14;;;;;;;;;;;;;;;;;;23300:20;23307:12;:10;:12::i;:::-;23300:20;;;;;;:::i;:::-;;;;;;;;23210:118::o:0;23469:120::-;23013:8;:6;:8::i;:::-;23005:41;;;;;;;;;;;;:::i;:::-;;;;;;;;;23538:5:::1;23528:7:::0;::::1;:15;;;;;;;;;;;;;;;;;;23559:22;23568:12;:10;:12::i;:::-;23559:22;;;;;;:::i;:::-;;;;;;;;23469:120::o:0;12789:774::-;13213:23;13239:69;13267:4;13239:69;;;;;;;;;;;;;;;;;13247:5;13239:27;;;;:69;;;;;:::i;:::-;13213:95;;13343:1;13323:10;:17;:21;13319:237;;;13478:10;13467:30;;;;;;;;;;;;:::i;:::-;13459:85;;;;;;;;;;;;:::i;:::-;;;;;;;;;13319:237;12859:704;12789:774;;:::o;6336:195::-;6439:12;6471:52;6493:6;6501:4;6507:1;6510:12;6471:21;:52::i;:::-;6464:59;;6336:195;;;;;:::o;7388:530::-;7515:12;7573:5;7548:21;:30;;7540:81;;;;;;;;;;;;:::i;:::-;;;;;;;;;7640:18;7651:6;7640:10;:18::i;:::-;7632:60;;;;;;;;;;;;:::i;:::-;;;;;;;;;7766:12;7780:23;7807:6;:11;;7827:5;7835:4;7807:33;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7765:75;;;;7858:52;7876:7;7885:10;7897:12;7858:17;:52::i;:::-;7851:59;;;;7388:530;;;;;;:::o;8924:742::-;9039:12;9068:7;9064:595;;;9099:10;9092:17;;;;9064:595;9233:1;9213:10;:17;:21;9209:439;;;9476:10;9470:17;9537:15;9524:10;9520:2;9516:19;9509:44;9209:439;9619:12;9612:20;;;;;;;;;;;:::i;:::-;;;;;;;;8924:742;;;;;;:::o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;7:139:1:-;53:5;91:6;78:20;69:29;;107:33;134:5;107:33;:::i;:::-;59:87;;;;:::o;152:133::-;195:5;233:6;220:20;211:29;;249:30;273:5;249:30;:::i;:::-;201:84;;;;:::o;291:137::-;345:5;376:6;370:13;361:22;;392:30;416:5;392:30;:::i;:::-;351:77;;;;:::o;434:139::-;480:5;518:6;505:20;496:29;;534:33;561:5;534:33;:::i;:::-;486:87;;;;:::o;579:143::-;636:5;667:6;661:13;652:22;;683:33;710:5;683:33;:::i;:::-;642:80;;;;:::o;728:329::-;787:6;836:2;824:9;815:7;811:23;807:32;804:2;;;842:79;;:::i;:::-;804:2;962:1;987:53;1032:7;1023:6;1012:9;1008:22;987:53;:::i;:::-;977:63;;933:117;794:263;;;;:::o;1063:619::-;1140:6;1148;1156;1205:2;1193:9;1184:7;1180:23;1176:32;1173:2;;;1211:79;;:::i;:::-;1173:2;1331:1;1356:53;1401:7;1392:6;1381:9;1377:22;1356:53;:::i;:::-;1346:63;;1302:117;1458:2;1484:53;1529:7;1520:6;1509:9;1505:22;1484:53;:::i;:::-;1474:63;;1429:118;1586:2;1612:53;1657:7;1648:6;1637:9;1633:22;1612:53;:::i;:::-;1602:63;;1557:118;1163:519;;;;;:::o;1688:468::-;1753:6;1761;1810:2;1798:9;1789:7;1785:23;1781:32;1778:2;;;1816:79;;:::i;:::-;1778:2;1936:1;1961:53;2006:7;1997:6;1986:9;1982:22;1961:53;:::i;:::-;1951:63;;1907:117;2063:2;2089:50;2131:7;2122:6;2111:9;2107:22;2089:50;:::i;:::-;2079:60;;2034:115;1768:388;;;;;:::o;2162:323::-;2218:6;2267:2;2255:9;2246:7;2242:23;2238:32;2235:2;;;2273:79;;:::i;:::-;2235:2;2393:1;2418:50;2460:7;2451:6;2440:9;2436:22;2418:50;:::i;:::-;2408:60;;2364:114;2225:260;;;;:::o;2491:345::-;2558:6;2607:2;2595:9;2586:7;2582:23;2578:32;2575:2;;;2613:79;;:::i;:::-;2575:2;2733:1;2758:61;2811:7;2802:6;2791:9;2787:22;2758:61;:::i;:::-;2748:71;;2704:125;2565:271;;;;:::o;2842:329::-;2901:6;2950:2;2938:9;2929:7;2925:23;2921:32;2918:2;;;2956:79;;:::i;:::-;2918:2;3076:1;3101:53;3146:7;3137:6;3126:9;3122:22;3101:53;:::i;:::-;3091:63;;3047:117;2908:263;;;;:::o;3177:351::-;3247:6;3296:2;3284:9;3275:7;3271:23;3267:32;3264:2;;;3302:79;;:::i;:::-;3264:2;3422:1;3447:64;3503:7;3494:6;3483:9;3479:22;3447:64;:::i;:::-;3437:74;;3393:128;3254:274;;;;:::o;3534:619::-;3611:6;3619;3627;3676:2;3664:9;3655:7;3651:23;3647:32;3644:2;;;3682:79;;:::i;:::-;3644:2;3802:1;3827:53;3872:7;3863:6;3852:9;3848:22;3827:53;:::i;:::-;3817:63;;3773:117;3929:2;3955:53;4000:7;3991:6;3980:9;3976:22;3955:53;:::i;:::-;3945:63;;3900:118;4057:2;4083:53;4128:7;4119:6;4108:9;4104:22;4083:53;:::i;:::-;4073:63;;4028:118;3634:519;;;;;:::o;4159:468::-;4224:6;4232;4281:2;4269:9;4260:7;4256:23;4252:32;4249:2;;;4287:79;;:::i;:::-;4249:2;4407:1;4432:53;4477:7;4468:6;4457:9;4453:22;4432:53;:::i;:::-;4422:63;;4378:117;4534:2;4560:50;4602:7;4593:6;4582:9;4578:22;4560:50;:::i;:::-;4550:60;;4505:115;4239:388;;;;;:::o;4633:108::-;4710:24;4728:5;4710:24;:::i;:::-;4705:3;4698:37;4688:53;;:::o;4747:118::-;4834:24;4852:5;4834:24;:::i;:::-;4829:3;4822:37;4812:53;;:::o;4871:99::-;4942:21;4957:5;4942:21;:::i;:::-;4937:3;4930:34;4920:50;;:::o;4976:109::-;5057:21;5072:5;5057:21;:::i;:::-;5052:3;5045:34;5035:50;;:::o;5091:373::-;5195:3;5223:38;5255:5;5223:38;:::i;:::-;5277:88;5358:6;5353:3;5277:88;:::i;:::-;5270:95;;5374:52;5419:6;5414:3;5407:4;5400:5;5396:16;5374:52;:::i;:::-;5451:6;5446:3;5442:16;5435:23;;5199:265;;;;;:::o;5470:364::-;5558:3;5586:39;5619:5;5586:39;:::i;:::-;5641:71;5705:6;5700:3;5641:71;:::i;:::-;5634:78;;5721:52;5766:6;5761:3;5754:4;5747:5;5743:16;5721:52;:::i;:::-;5798:29;5820:6;5798:29;:::i;:::-;5793:3;5789:39;5782:46;;5562:272;;;;;:::o;5840:366::-;5982:3;6003:67;6067:2;6062:3;6003:67;:::i;:::-;5996:74;;6079:93;6168:3;6079:93;:::i;:::-;6197:2;6192:3;6188:12;6181:19;;5986:220;;;:::o;6212:366::-;6354:3;6375:67;6439:2;6434:3;6375:67;:::i;:::-;6368:74;;6451:93;6540:3;6451:93;:::i;:::-;6569:2;6564:3;6560:12;6553:19;;6358:220;;;:::o;6584:366::-;6726:3;6747:67;6811:2;6806:3;6747:67;:::i;:::-;6740:74;;6823:93;6912:3;6823:93;:::i;:::-;6941:2;6936:3;6932:12;6925:19;;6730:220;;;:::o;6956:365::-;7098:3;7119:66;7183:1;7178:3;7119:66;:::i;:::-;7112:73;;7194:93;7283:3;7194:93;:::i;:::-;7312:2;7307:3;7303:12;7296:19;;7102:219;;;:::o;7327:366::-;7469:3;7490:67;7554:2;7549:3;7490:67;:::i;:::-;7483:74;;7566:93;7655:3;7566:93;:::i;:::-;7684:2;7679:3;7675:12;7668:19;;7473:220;;;:::o;7699:366::-;7841:3;7862:67;7926:2;7921:3;7862:67;:::i;:::-;7855:74;;7938:93;8027:3;7938:93;:::i;:::-;8056:2;8051:3;8047:12;8040:19;;7845:220;;;:::o;8071:366::-;8213:3;8234:67;8298:2;8293:3;8234:67;:::i;:::-;8227:74;;8310:93;8399:3;8310:93;:::i;:::-;8428:2;8423:3;8419:12;8412:19;;8217:220;;;:::o;8443:366::-;8585:3;8606:67;8670:2;8665:3;8606:67;:::i;:::-;8599:74;;8682:93;8771:3;8682:93;:::i;:::-;8800:2;8795:3;8791:12;8784:19;;8589:220;;;:::o;8815:366::-;8957:3;8978:67;9042:2;9037:3;8978:67;:::i;:::-;8971:74;;9054:93;9143:3;9054:93;:::i;:::-;9172:2;9167:3;9163:12;9156:19;;8961:220;;;:::o;9187:366::-;9329:3;9350:67;9414:2;9409:3;9350:67;:::i;:::-;9343:74;;9426:93;9515:3;9426:93;:::i;:::-;9544:2;9539:3;9535:12;9528:19;;9333:220;;;:::o;9559:366::-;9701:3;9722:67;9786:2;9781:3;9722:67;:::i;:::-;9715:74;;9798:93;9887:3;9798:93;:::i;:::-;9916:2;9911:3;9907:12;9900:19;;9705:220;;;:::o;9931:366::-;10073:3;10094:67;10158:2;10153:3;10094:67;:::i;:::-;10087:74;;10170:93;10259:3;10170:93;:::i;:::-;10288:2;10283:3;10279:12;10272:19;;10077:220;;;:::o;10303:366::-;10445:3;10466:67;10530:2;10525:3;10466:67;:::i;:::-;10459:74;;10542:93;10631:3;10542:93;:::i;:::-;10660:2;10655:3;10651:12;10644:19;;10449:220;;;:::o;10675:366::-;10817:3;10838:67;10902:2;10897:3;10838:67;:::i;:::-;10831:74;;10914:93;11003:3;10914:93;:::i;:::-;11032:2;11027:3;11023:12;11016:19;;10821:220;;;:::o;11047:366::-;11189:3;11210:67;11274:2;11269:3;11210:67;:::i;:::-;11203:74;;11286:93;11375:3;11286:93;:::i;:::-;11404:2;11399:3;11395:12;11388:19;;11193:220;;;:::o;11493:1035::-;11644:4;11639:3;11635:14;11734:4;11727:5;11723:16;11717:23;11753:63;11810:4;11805:3;11801:14;11787:12;11753:63;:::i;:::-;11659:167;11908:4;11901:5;11897:16;11891:23;11927:63;11984:4;11979:3;11975:14;11961:12;11927:63;:::i;:::-;11836:164;12080:4;12073:5;12069:16;12063:23;12099:63;12156:4;12151:3;12147:14;12133:12;12099:63;:::i;:::-;12010:162;12256:4;12249:5;12245:16;12239:23;12275:63;12332:4;12327:3;12323:14;12309:12;12275:63;:::i;:::-;12182:166;12435:4;12428:5;12424:16;12418:23;12454:57;12505:4;12500:3;12496:14;12482:12;12454:57;:::i;:::-;12358:163;11613:915;;;:::o;12534:108::-;12611:24;12629:5;12611:24;:::i;:::-;12606:3;12599:37;12589:53;;:::o;12648:118::-;12735:24;12753:5;12735:24;:::i;:::-;12730:3;12723:37;12713:53;;:::o;12772:271::-;12902:3;12924:93;13013:3;13004:6;12924:93;:::i;:::-;12917:100;;13034:3;13027:10;;12906:137;;;;:::o;13049:222::-;13142:4;13180:2;13169:9;13165:18;13157:26;;13193:71;13261:1;13250:9;13246:17;13237:6;13193:71;:::i;:::-;13147:124;;;;:::o;13277:442::-;13426:4;13464:2;13453:9;13449:18;13441:26;;13477:71;13545:1;13534:9;13530:17;13521:6;13477:71;:::i;:::-;13558:72;13626:2;13615:9;13611:18;13602:6;13558:72;:::i;:::-;13640;13708:2;13697:9;13693:18;13684:6;13640:72;:::i;:::-;13431:288;;;;;;:::o;13725:332::-;13846:4;13884:2;13873:9;13869:18;13861:26;;13897:71;13965:1;13954:9;13950:17;13941:6;13897:71;:::i;:::-;13978:72;14046:2;14035:9;14031:18;14022:6;13978:72;:::i;:::-;13851:206;;;;;:::o;14063:210::-;14150:4;14188:2;14177:9;14173:18;14165:26;;14201:65;14263:1;14252:9;14248:17;14239:6;14201:65;:::i;:::-;14155:118;;;;:::o;14279:313::-;14392:4;14430:2;14419:9;14415:18;14407:26;;14479:9;14473:4;14469:20;14465:1;14454:9;14450:17;14443:47;14507:78;14580:4;14571:6;14507:78;:::i;:::-;14499:86;;14397:195;;;;:::o;14598:419::-;14764:4;14802:2;14791:9;14787:18;14779:26;;14851:9;14845:4;14841:20;14837:1;14826:9;14822:17;14815:47;14879:131;15005:4;14879:131;:::i;:::-;14871:139;;14769:248;;;:::o;15023:419::-;15189:4;15227:2;15216:9;15212:18;15204:26;;15276:9;15270:4;15266:20;15262:1;15251:9;15247:17;15240:47;15304:131;15430:4;15304:131;:::i;:::-;15296:139;;15194:248;;;:::o;15448:419::-;15614:4;15652:2;15641:9;15637:18;15629:26;;15701:9;15695:4;15691:20;15687:1;15676:9;15672:17;15665:47;15729:131;15855:4;15729:131;:::i;:::-;15721:139;;15619:248;;;:::o;15873:419::-;16039:4;16077:2;16066:9;16062:18;16054:26;;16126:9;16120:4;16116:20;16112:1;16101:9;16097:17;16090:47;16154:131;16280:4;16154:131;:::i;:::-;16146:139;;16044:248;;;:::o;16298:419::-;16464:4;16502:2;16491:9;16487:18;16479:26;;16551:9;16545:4;16541:20;16537:1;16526:9;16522:17;16515:47;16579:131;16705:4;16579:131;:::i;:::-;16571:139;;16469:248;;;:::o;16723:419::-;16889:4;16927:2;16916:9;16912:18;16904:26;;16976:9;16970:4;16966:20;16962:1;16951:9;16947:17;16940:47;17004:131;17130:4;17004:131;:::i;:::-;16996:139;;16894:248;;;:::o;17148:419::-;17314:4;17352:2;17341:9;17337:18;17329:26;;17401:9;17395:4;17391:20;17387:1;17376:9;17372:17;17365:47;17429:131;17555:4;17429:131;:::i;:::-;17421:139;;17319:248;;;:::o;17573:419::-;17739:4;17777:2;17766:9;17762:18;17754:26;;17826:9;17820:4;17816:20;17812:1;17801:9;17797:17;17790:47;17854:131;17980:4;17854:131;:::i;:::-;17846:139;;17744:248;;;:::o;17998:419::-;18164:4;18202:2;18191:9;18187:18;18179:26;;18251:9;18245:4;18241:20;18237:1;18226:9;18222:17;18215:47;18279:131;18405:4;18279:131;:::i;:::-;18271:139;;18169:248;;;:::o;18423:419::-;18589:4;18627:2;18616:9;18612:18;18604:26;;18676:9;18670:4;18666:20;18662:1;18651:9;18647:17;18640:47;18704:131;18830:4;18704:131;:::i;:::-;18696:139;;18594:248;;;:::o;18848:419::-;19014:4;19052:2;19041:9;19037:18;19029:26;;19101:9;19095:4;19091:20;19087:1;19076:9;19072:17;19065:47;19129:131;19255:4;19129:131;:::i;:::-;19121:139;;19019:248;;;:::o;19273:419::-;19439:4;19477:2;19466:9;19462:18;19454:26;;19526:9;19520:4;19516:20;19512:1;19501:9;19497:17;19490:47;19554:131;19680:4;19554:131;:::i;:::-;19546:139;;19444:248;;;:::o;19698:419::-;19864:4;19902:2;19891:9;19887:18;19879:26;;19951:9;19945:4;19941:20;19937:1;19926:9;19922:17;19915:47;19979:131;20105:4;19979:131;:::i;:::-;19971:139;;19869:248;;;:::o;20123:419::-;20289:4;20327:2;20316:9;20312:18;20304:26;;20376:9;20370:4;20366:20;20362:1;20351:9;20347:17;20340:47;20404:131;20530:4;20404:131;:::i;:::-;20396:139;;20294:248;;;:::o;20548:419::-;20714:4;20752:2;20741:9;20737:18;20729:26;;20801:9;20795:4;20791:20;20787:1;20776:9;20772:17;20765:47;20829:131;20955:4;20829:131;:::i;:::-;20821:139;;20719:248;;;:::o;20973:331::-;21120:4;21158:3;21147:9;21143:19;21135:27;;21172:125;21294:1;21283:9;21279:17;21270:6;21172:125;:::i;:::-;21125:179;;;;:::o;21310:222::-;21403:4;21441:2;21430:9;21426:18;21418:26;;21454:71;21522:1;21511:9;21507:17;21498:6;21454:71;:::i;:::-;21408:124;;;;:::o;21538:652::-;21737:4;21775:3;21764:9;21760:19;21752:27;;21789:71;21857:1;21846:9;21842:17;21833:6;21789:71;:::i;:::-;21870:72;21938:2;21927:9;21923:18;21914:6;21870:72;:::i;:::-;21952;22020:2;22009:9;22005:18;21996:6;21952:72;:::i;:::-;22034;22102:2;22091:9;22087:18;22078:6;22034:72;:::i;:::-;22116:67;22178:3;22167:9;22163:19;22154:6;22116:67;:::i;:::-;21742:448;;;;;;;;:::o;22277:98::-;22328:6;22362:5;22356:12;22346:22;;22335:40;;;:::o;22381:99::-;22433:6;22467:5;22461:12;22451:22;;22440:40;;;:::o;22486:147::-;22587:11;22624:3;22609:18;;22599:34;;;;:::o;22639:169::-;22723:11;22757:6;22752:3;22745:19;22797:4;22792:3;22788:14;22773:29;;22735:73;;;;:::o;22814:305::-;22854:3;22873:20;22891:1;22873:20;:::i;:::-;22868:25;;22907:20;22925:1;22907:20;:::i;:::-;22902:25;;23061:1;22993:66;22989:74;22986:1;22983:81;22980:2;;;23067:18;;:::i;:::-;22980:2;23111:1;23108;23104:9;23097:16;;22858:261;;;;:::o;23125:96::-;23162:7;23191:24;23209:5;23191:24;:::i;:::-;23180:35;;23170:51;;;:::o;23227:90::-;23261:7;23304:5;23297:13;23290:21;23279:32;;23269:48;;;:::o;23323:126::-;23360:7;23400:42;23393:5;23389:54;23378:65;;23368:81;;;:::o;23455:77::-;23492:7;23521:5;23510:16;;23500:32;;;:::o;23538:307::-;23606:1;23616:113;23630:6;23627:1;23624:13;23616:113;;;23715:1;23710:3;23706:11;23700:18;23696:1;23691:3;23687:11;23680:39;23652:2;23649:1;23645:10;23640:15;;23616:113;;;23747:6;23744:1;23741:13;23738:2;;;23827:1;23818:6;23813:3;23809:16;23802:27;23738:2;23587:258;;;;:::o;23851:180::-;23899:77;23896:1;23889:88;23996:4;23993:1;23986:15;24020:4;24017:1;24010:15;24160:117;24269:1;24266;24259:12;24283:102;24324:6;24375:2;24371:7;24366:2;24359:5;24355:14;24351:28;24341:38;;24331:54;;;:::o;24391:170::-;24531:22;24527:1;24519:6;24515:14;24508:46;24497:64;:::o;24567:170::-;24707:22;24703:1;24695:6;24691:14;24684:46;24673:64;:::o;24743:225::-;24883:34;24879:1;24871:6;24867:14;24860:58;24952:8;24947:2;24939:6;24935:15;24928:33;24849:119;:::o;24974:158::-;25114:10;25110:1;25102:6;25098:14;25091:34;25080:52;:::o;25138:177::-;25278:29;25274:1;25266:6;25262:14;25255:53;25244:71;:::o;25321:225::-;25461:34;25457:1;25449:6;25445:14;25438:58;25530:8;25525:2;25517:6;25513:15;25506:33;25427:119;:::o;25552:166::-;25692:18;25688:1;25680:6;25676:14;25669:42;25658:60;:::o;25724:182::-;25864:34;25860:1;25852:6;25848:14;25841:58;25830:76;:::o;25912:182::-;26052:34;26048:1;26040:6;26036:14;26029:58;26018:76;:::o;26100:170::-;26240:22;26236:1;26228:6;26224:14;26217:46;26206:64;:::o;26276:170::-;26416:22;26412:1;26404:6;26400:14;26393:46;26382:64;:::o;26452:179::-;26592:31;26588:1;26580:6;26576:14;26569:55;26558:73;:::o;26637:165::-;26777:17;26773:1;26765:6;26761:14;26754:41;26743:59;:::o;26808:229::-;26948:34;26944:1;26936:6;26932:14;26925:58;27017:12;27012:2;27004:6;27000:15;26993:37;26914:123;:::o;27043:167::-;27183:19;27179:1;27171:6;27167:14;27160:43;27149:61;:::o;27216:122::-;27289:24;27307:5;27289:24;:::i;:::-;27282:5;27279:35;27269:2;;27328:1;27325;27318:12;27269:2;27259:79;:::o;27344:116::-;27414:21;27429:5;27414:21;:::i;:::-;27407:5;27404:32;27394:2;;27450:1;27447;27440:12;27394:2;27384:76;:::o;27466:122::-;27539:24;27557:5;27539:24;:::i;:::-;27532:5;27529:35;27519:2;;27578:1;27575;27568:12;27519:2;27509:79;:::o
Swarm Source
ipfs://6c7fa7ac4c320259b9a23b75d8e1b490107b54518f75bc71b4341f4901042132
Age | Block | Fee Address | BC Fee Address | Voting Power | Jailed | Incoming |
---|
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.